За последние 24 часа нас посетили 18484 программиста и 1690 роботов. Сейчас ищут 938 программистов ...

Добавление записи в базу в виде ссылки

Тема в разделе "Прочие вопросы по PHP", создана пользователем Wertel_R, 30 май 2011.

  1. Wertel_R

    Wertel_R Активный пользователь

    С нами с:
    26 май 2011
    Сообщения:
    5
    Симпатии:
    0
    Допустим, на моём сайте (точнее, локальной информационной системе) в личном кабинете студента есть страница с возможностью добавления курсов в список курсов студента:
    [​IMG]
    PHP:
    1. <?php
    2. include ("blocks/bd.php");
    3. ?>
    4.  
    5.  
    6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    7. <html>
    8. <head>
    9. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    10. <title>Untitled Document</title>
    11. <link href="style.css" rel="stylesheet" type="text/css">
    12. </head>
    13.  
    14. <body>
    15. <table width="800" border="0" align="center" class="main_border">
    16.   <tr>
    17.     <td>&nbsp;</td>
    18.   </tr>
    19.  <tr>
    20.     <td>
    21.     <table width="800" height="93" border="0">
    22.        <?php  include("blocks/lefttd.php"); ?>
    23. </table>
    24. </td>
    25.   </tr>
    26.   <tr>
    27.     <td>
    28.     <p><strong>Выберите курс для добавления:          </strong></p>
    29.           <form action="new_course.php" method="post">
    30.         <?php  
    31.         $result = mysql_query("SELECT title,id FROM course");
    32.          $myrow = mysql_fetch_array($result);
    33.          
    34.          do
    35.          {
    36.          printf ("<p><input name='id' type='radio' value='%s'><label> %s</label</p>",$myrow["id"],$myrow["title"]);
    37.          }
    38.          while ($myrow = mysql_fetch_array($result));
    39.          ?>
    40.          <p><input name="submit" type="submit" id="submit" value="Добавить курс"></p>
    41.          </form>
    42.     </td>
    43.   </tr>
    44. </table>
    45.  
    46.  
    47. </body>
    48. </html>
    Так вот: что нужно прописать на странице-обработчике new_course.php:
    PHP:
    1. <?php
    2. include ("blocks/bd.php");
    3. if (isset ($_POST['id'])) {$id = $_POST['id']; if ($id == '') {unset($id);} }
    4. if (isset ($_POST['title'])) {$title = $_POST['title']; if ($title == '') {unset($title);} }
    5. ?>
    6.  
    7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    8. <html>
    9. <head>
    10. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    11. <title>Обработчик</title>
    12. <link href="style.css" rel="stylesheet" type="text/css">
    13. </head>
    14.  
    15. <body>
    16. <table width="800" border="0" align="center" bgcolor="#C4CEE3" class="main_border">
    17.   <tr>
    18.     <td>&nbsp;</td>
    19.   </tr>
    20.  <tr>
    21.     <td>
    22.     <table width="800" height="93" border="0">
    23.        <?php  include("blocks/lefttd.php"); ?>
    24. </table>
    25. </td>
    26.   </tr>
    27.   <tr>
    28.     <td>
    29.     <?php
    30.         if (isset($title) && isset($description) && isset($date))
    31.         {
    32.         $result = mysql_query ("INSERT INTO userlist (courselist) /* Что здесь прописать?? */");
    33.         if ($result == 'true') {echo "<p>Курс успешно добавлен.</p>";}
    34.         else {echo "<p>Курс не добавлен!</p>";}
    35.         }
    36.         else
    37.         {
    38.         echo "<p>Вы ввели не все данные, поэтому курс не может быть добавлен!</p>";
    39.         }
    40.         ?>
    41.     </td>
    42.   </tr>
    43. </table>
    44. </body>
    45. </html>
    чтобы в столбец courselist (этот столбец находится в таблице с пользователями) добавлялись ссылки на страницу с курсом, которая находится в основном разделе сайта? т.е. ссылка вида view_course.php?id="Параметр id из таблицы с курсами", чтобы в конечном итоге получилось так:
    [​IMG]
    ?
    Подозреваю, что это будет что-то с использованием цикла, но никак не могу додуматься, что.
     
  2. engager

    engager Активный пользователь

    С нами с:
    21 янв 2009
    Сообщения:
    1.106
    Симпатии:
    1
    получается, за раз можно добавить только один курс?
     
  3. Alex_@

    Alex_@ Активный пользователь

    С нами с:
    1 окт 2009
    Сообщения:
    76
    Симпатии:
    0
    Помоему глупый вопрос!
    Конечно же добавление записи в БД, но только не циклами в данном случае)))))))
    и вообще почему циклами??????

    да вообще коряво написано и без логике!

    зачем соединять вместе php и html и производить какие-либо вычисления внутри html??????
    это затруднит с последующим внесения изменения в срипты php и редактирование html!

    я бы сделал по другому:

    1. Отделил бы html и php!
    2. Сначала определелил переданные параметри, провёл их обработку, и только потом производить вычиления и генерация html-кода и добавление в шаблон или на страничку!

    а вообще изначально на мой взгляд у тебя подход к этому не правильный!