PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (3): [1] 2 3 »

> Найдено сообщений: 32
kirill1 Отправлено: 13 Декабря, 2013 - 17:35:07 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Panoptik пишет:
знаете что, мне не сложно помочь и подсказать, не знаю зачем вы это всё делаете (возможно в институте задали).
если вам нужно действительно что-то сделать, то вам нужно пойти по суровому пути джедая и разобраться в каждой строчке написанной выше. выяснить значение каждой функции и оператора. как работает интерпретатор и условия, циклы и прочее
если вам нужно просто сдать сессию, то лучше просто опишите задание и может кому-нибудь будет лень, и он это напишет

просто подсказывать вам решение проблемы в которой вы 90% не понимаете происходящего - это как-то неправильно.

так что выбор за вами


Мне не нужно что бы вы все делали за меня. Я сам пытаюсь во всем разобраться, но признаться это очень сложно для меня.
Я понял в чем ошибка - данные не поступают из формы. Элемент <select> создает список из которого нужно выбрать значение, но у меня он пустой. (таблица otdelenia заполнена) как это исправить я не знаю.

P.S. большое спасибо за оказанную помощь
kirill1 Отправлено: 13 Декабря, 2013 - 16:07:54 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Panoptik пишет:
в форме нужно
<select name="OTD">

заменить на <select name="ID_OTD">


это я сделал, но ошибка не здесь. Может я что то не так записал ... посмотрите пожалуйста, никак не могу понять.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $query = mysql_query ("select * from vrachi") ;
  4. $otd = array();
  5. $row = mysql_fetch_array ($query);
  6.  
  7. $table = "<table border=0  align=center  bordercolor='black'  width='500'>\n";
  8. $table .= "<tr bgcolor='gray'>
  9. <td align=center> id </td>
  10. <td align=center> ФИО </td>
  11. <td align=center> Должность </td>
  12. <td align=center>  Телефон </td>
  13. <td align=center>  Кабинет </td>
  14. <td align=center>  idотдела </td>
  15. </tr>";
  16. while ($row = mysql_fetch_assoc($query))
  17. {  
  18. $otd[] = $row;
  19.      $table .= "<tr>\n";
  20.      $table .= "<td bgcolor='white'>".$row['ID_VR']."</td>\n";
  21.          $table .= "<td align=center bgcolor='white'>".$row['FIO']."</td>\n";
  22.      $table .= "<td align=center bgcolor='white'>".$row['DOLGNOST']."</td>\n";
  23.      $table .= "<td align=center bgcolor='white'>".$row['TELEFON']."</td>\n";
  24.          $table .= "<td align=center bgcolor='white'>".$row['KABINET']."</td>\n";
  25.          $table .= "<td align=center bgcolor='white'>".$row['ID_OTD']."</td>\n";
  26.          
  27.      $table .= "</tr>\n";
  28.  }
  29.  
  30.  $table .= "</table>\n";
  31.  
  32.  
  33.  echo $table;
  34. ?>
  35.  


PHP:
скопировать код в буфер обмена
  1.  
  2. <form method="post" action="insert2.php">
  3.   ФИО: <input type="text" name="FIO" />
  4.   Должность:  <input type="text" name="DOLGNOST" />
  5.   телефон: <input type="text" name="TELEFON" />
  6.   кабинет: <input type="text" name="KABINET" />
  7.   idотдела: <select  name="ID_OTD" />
  8. <? foreach($otd as $o): ?>
  9.   <option value="<?=$o['ID_OTD'];?>"><?=$o['NAZVANIE'];?></option>
  10. <? endforeach; ?>
  11. </select>
  12.   <input type="submit" name="ok" value="Добавить" />
  13. </form>
  14.  

insert2:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. include('db.php');
  4. $FIO = $_POST['FIO'];
  5. $DOLGNOST = $_POST['DOLGNOST'];
  6. $TELEFON = $_POST ['TELEFON'];
  7. $KABINET = $_POST ['KABINET'];
  8. $ID_OTD = $_POST ['ID_OTD'];
  9. if (isset($_POST['ok']))
  10. {
  11. $query = mysql_query ("INSERT INTO vrachi (FIO,DOLGNOST,TELEFON,KABINET,ID_OTD) VALUES ('$FIO','$DOLGNOST','$TELEFON','$KABINET','$ID_OTD')") ;
  12. echo"добавленно<a href='vrachi.php'>Обновить</a>";
  13. }
  14. ?>
  15.  
kirill1 Отправлено: 13 Декабря, 2013 - 15:38:19 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
VenZell пишет:
Примерно так:

Начало цикла
Открыть тег <option>;
Записать в атрибут value значение ID_OTD текущего элемента;
Записать внутри тега значение NAZVANIE текущего элемента;
Закрыть тег <option>;
Вывести на экран получившийся html-код целиком;
Проверить, был ли текущий элемент массива $otd последним;
Если это НЕ последний элемент - установить указатель на следующий элемент и перейти в начало тела цикла;
Если это был последний элемент - сбросить указатель на первый элемент массива и завершить выполнение цикла;
Конец цикла



Спасибо теперь понял. Но как я понимаю и в этом документе теперь нужно что то изменить ?

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. include('db.php');
  4. $FIO = $_POST['FIO'];
  5. $DOLGNOST = $_POST['DOLGNOST'];
  6. $TELEFON = $_POST ['TELEFON'];
  7. $KABINET = $_POST ['KABINET'];
  8. $ID_OTD = $_POST ['ID_OTD'];
  9. if (isset($_POST['ok']))
  10. {
  11. $query = mysql_query ("INSERT INTO vrachi (FIO,DOLGNOST,TELEFON,KABINET,ID_OTD) VALUES ('$FIO','$DOLGNOST','$TELEFON','$KABINET','$ID_OTD')") ;
  12. echo"добавленно<a href='vrachi.php'>Обновить</a>";
  13. }
  14. ?>
  15.  

потому что Notice: Undefined index: ID_OTD in Z:\home\5kurs.ru\www\insert2.php on line 7
kirill1 Отправлено: 13 Декабря, 2013 - 15:02:57 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Panoptik пишет:
что вам не понятно? селект я за вас уже вставил в прведенную вами форму

на счет того что не сохраняется смотрите ошибки mysql (mysql_error) если запрос на инсерт выдает false. может в чет-то другом проблема

ну а свои вопросы тогда формулируйте конкретно, чтобы было понятно чем вам можно помочь


мне не понятна вот эта часть
PHP:
скопировать код в буфер обмена
  1.  
  2. <? foreach($otd as $o): ?>
  3.   <option value="<?=$o['ID_OTD'];?>"><?=$o['NAZVANIE'];?></option>
  4. <? endforeach; ?>
  5.  
kirill1 Отправлено: 13 Декабря, 2013 - 01:34:08 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Panoptik пишет:
для таких случаев используется элемент <select> в который вы предварительно перед отрисовкой формы должны выбрать все существующие отделения и в атрибут value каждого опшина подставить айди этого самого отделения

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?
  3. // перед выводом формы должны выбрать все отделения в переменную-массив
  4. $res = mysql_query('SELECT ID_OTD,NAZVANIE FROM otdelenia');
  5. $otd = array();
  6. while($row = mysql_fetch_assoc($res)) {
  7.  $otd[] = $row;
  8. }
  9.  
  10. ?>
  11.  
  12. <form method="post" action="insert2.php">
  13. ФИО: <input type="text" name="FIO" />
  14. Должность: <input type="text" name="DOLGNOST" />
  15. телефон: <input type="text" name="TELEFON" />
  16. кабинет: <input type="text" name="KABINET" />
  17. отдел: <select name="OTD">
  18. <? foreach($otd as $o): ?>
  19.   <option value="<?=$o['ID_OTD'];?>"><?=$o['NAZVANIE'];?></option>
  20. <? endforeach; ?>
  21. </select>
  22. <input type="submit" name="ok" value="Добавить" />
  23. </form>


ну а при редактировании вы должны еще заполнить форму существующими значениями с базы данных

вобщем учите мат часть

PS настоятельно прошу использовать оформление кода, очень трудно читать
уважайте других пользователей



да конечно, извините.


я забыл написать, что использую select.

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. $query = mysql_query ("select * from vrachi") ;
  4. $row = mysql_fetch_array ($query);
  5.  
  6. $table = "<table border=0  align=center  bordercolor='black'  width='500'>\n";
  7. $table .= "<tr bgcolor='gray'>
  8. <td align=center> id </td>
  9. <td align=center> ФИО </td>
  10. <td align=center> Должность </td>
  11. <td align=center>  Телефон </td>
  12. <td align=center>  Кабинет </td>
  13. <td align=center>  idотдела </td>
  14. </tr>";
  15. while ($row = mysql_fetch_assoc($query))
  16. {  
  17.     $table .= "<tr>\n";
  18.     $table .= "<td bgcolor='white'>".$row['ID_VR']."</td>\n";
  19.          $table .= "<td align=center bgcolor='white'>".$row['FIO']."</td>\n";
  20.     $table .= "<td align=center bgcolor='white'>".$row['DOLGNOST']."</td>\n";
  21.     $table .= "<td align=center bgcolor='white'>".$row['TELEFON']."</td>\n";
  22.          $table .= "<td align=center bgcolor='white'>".$row['KABINET']."</td>\n";
  23.          $table .= "<td align=center bgcolor='white'>".$row['ID_OTD']."</td>\n";
  24.          
  25.     $table .= "</tr>\n";
  26. }
  27.  
  28. $table .= "</table>\n";
  29.  
  30.  
  31. echo $table;
  32. ?>
  33. </div>
  34.  
  35. <div class="footer">
  36.  <table width="610" border="0">
  37.   <tr>
  38.     <td height="29"  align="center"><a href="vrachadd.php" class="q3">Добавить данные</a></td>
  39.     <td  align="center"><a href="delotdel.php" class="q3">Удалить данные</a></td>
  40.     <td  align="center"><a href="reotdel.php" class="q3">Обновить данные</a></td>
  41.   </tr>
  42. </table>
  43.  


это я знаю, но поясните пожалуйста еще раз то что вы написали после, и как мне с этим быть ?
kirill1 Отправлено: 12 Декабря, 2013 - 23:38:29 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Panoptik пишет:
FOREIGN KEY помогает сохранить целостность данных (к примеру запретить удалять отделения если в них числятся врачи, чтобы не осталось врачей висящих в воздухе не относящихся ни к одному отделению или удалять каскадом зависимые строки, если вы к примеру удаляете отделение, то все врачи удалятся - это как раз то что вы написали, ну и обновление влияет на изменение айди отделения в таблице врачей если вдруг изменится айди отделения в таблице отделений, но этот случай практически встречается очень редко)

соответственно в вашем вопросе добавление вы должны писать сами и делать соответствующие проверки, потому как внешний ключ теперь не даст вам добавить доктора, если вы ему не укажите существующее отделение

что вы имели ввиду под видом "что бы в дочерней таблице данные менялись, добавлялись и удалялись при изменении в родительской." не совсем понятно,
но в данном случае на счет удаления я вроде как пояснил





Да, вот и именно он мне не позволяет добавить нового врача без ID_OTD в phpmyadmin я могу добавить ему отделение но как реализовать добавление через форму я не понимаю ...

<form method="post" action="insert2.php">
ФИО: <input type="text" name="FIO" />
Должность: <input type="text" name="DOLGNOST" />
телефон: <input type="text" name="TELEFON" />
кабинет: <input type="text" name="KABINET" />
idотдела: <input type="text" name="OTD" />
<input type="submit" name="ok" value="Добавить" />
</form>

insert2.php:

<?php
include('db.php');
$FIO = $_POST['FIO'];
$DOLGNOST = $_POST['DOLGNOST'];
$TELEFON = $_POST ['TELEFON'];
$KABINET = $_POST ['KABINET'];
$OTD = $_POST ['OTD'];
if (isset($_POST['ok']))
{
$query = mysql_query ("INSERT INTO vrachi (FIO,DOLGNOST,TELEFON,KABINET,OTD) VALUES ('$FIO','$DOLGNOST','$TELEFON','$KABINET','$OTD')") ;
echo"добавленно<a href='vrachi.php'>Обновить</a>";
}
?>
kirill1 Отправлено: 12 Декабря, 2013 - 23:23:50 • Тема: ничего не получается • Форум: Напишите за меня, пожалуйста

Ответов: 12
Просмотров: 99
Здравствуйте, есть задание создать ИС поликлиники. я сделал БД, таблицы, связал нужные поля. вот пример. Усть таблица otdelenia c полями (ID_OTD,NAZVANIE) и таблица vrachi с полями (ID_VR, FIO, ID_OTD).
Я связал поля ID_OTD и ID_OTD

ALTER TABLE vrachi ADD FOREIGN KEY (ID_OTD) REFERENCES otdelenia(ID_OTD)
ON UPDATE CASCADE UPDATE ON DELETE CASCADE ;

сделал, вывод из таблицы. и форму для добавления и удаления данных. ну и обновления

Но ничего не работает ... ошибки нет но данные не поступают.
Мне надо что бы в дочерней таблице данные менялись, добавлялись и удалялись при изменении в родительской.

Может быть есть другой способ .... Подскажите пожалуйста
kirill1 Отправлено: 17 Июня, 2013 - 22:02:59 • Тема: кодировка • Форум: Напишите за меня, пожалуйста

Ответов: 6
Просмотров: 51
LIME пишет:
нет
просто сделай


сделал, не помогло.
kirill1 Отправлено: 17 Июня, 2013 - 21:59:23 • Тема: кодировка • Форум: Напишите за меня, пожалуйста

Ответов: 6
Просмотров: 51
LIME пишет:
сделай так
ctrl-A ctrl-C
потом преобразуй
потом ctrl-V


на начало этой операции, кодировка должна стоять utf8 ?
kirill1 Отправлено: 17 Июня, 2013 - 21:53:38 • Тема: кодировка • Форум: Напишите за меня, пожалуйста

Ответов: 6
Просмотров: 51
LIME пишет:
а сейчас в какой кодировке?


сейчас в utf8 и ошибка есть, а если ставить в utf8безbom то нет, но тогда текст невозможно прочитать ...
kirill1 Отправлено: 17 Июня, 2013 - 21:01:38 • Тема: кодировка • Форум: Напишите за меня, пожалуйста

Ответов: 6
Просмотров: 51
здравствуйте, можо ли избавиться от ошибки Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\bd2.ru\www\1.php:1) in Z:\home\bd2.ru\www\1.php on line 2 без перегона файла в кодировку UTF8 Без BOM ?
kirill1 Отправлено: 17 Июня, 2013 - 20:59:37 • Тема: ограничить доступ • Форум: Напишите за меня, пожалуйста

Ответов: 8
Просмотров: 60
[quote=teddy]kirill1
Это не логическая ошибка, а синтаксическая. Ищите ошибку в синтаксисе, скорее всего где то лишнее < завалялось[/quo

спасибо
kirill1 Отправлено: 17 Июня, 2013 - 18:51:48 • Тема: ограничить доступ • Форум: Напишите за меня, пожалуйста

Ответов: 8
Просмотров: 60
caballero пишет:
правильно


просто почему то ошибку выдаёт....

на <div> ссылается

Parse error: syntax error, unexpected '<' in Z:\home\bd2.ru\www\1.php on line 170
kirill1 Отправлено: 17 Июня, 2013 - 18:43:48 • Тема: ограничить доступ • Форум: Напишите за меня, пожалуйста

Ответов: 8
Просмотров: 60
caballero пишет:
нужно
"показываем" переименовываем в echo


подскажите пожалуйста как правильно записать ?

<?php if($_SESSION["login"] == "admin"){ ....} ?>
kirill1 Отправлено: 17 Июня, 2013 - 17:23:11 • Тема: ограничить доступ • Форум: Напишите за меня, пожалуйста

Ответов: 8
Просмотров: 60
caballero пишет:
if(admin){

показываем
{ else {
не показываем
}


спасибо большое, но показываем и не показываем так и пишем ? И нужно ли в php брать ?

Страниц (3): [1] 2 3 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB