За последние 24 часа нас посетили 18943 программиста и 1615 роботов. Сейчас ищут 706 программистов ...

Ввод/вывод из БД

Тема в разделе "PHP для новичков", создана пользователем Hash, 29 июн 2008.

  1. Hash

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

    С нами с:
    21 июн 2008
    Сообщения:
    14
    Симпатии:
    0
    Помогите пожалуйсто. суть такая: система извлекает из БД данные и в зависимости от того, оплачен ли договор (sold в ячеке oplata) раскрашивает строку в определенный цвет. проблема в том, что когда добавляю через пхп, ставлю в чекбоксе галочку, что оплачено, он записывает в БД, но не воспроизводит потом то, что оплачено, а когда записываешь вручную, все нормалбно отображается, и еще почему-тоу меня постоянно добавляется пустая строка в БД. Помогите разобраться, плиз

    dog.php
    PHP:
    1.  
    2. include "connect.php";
    3. include "dog_add.php";
    4. $result = mysql_query('SELECT * from dogovor');
    5. print ('<table border=1 width=\'75%\' cellspacing=2 cellpading=2 align=center>');
    6. print ('<tr align=center valign=top>');
    7. print ('<td align=center valign=top>Договор</td>');
    8. print ('<td align=center valign=top>Контрагент</td>');
    9. print ('<td align=center valign=top>Сумма</td>');
    10. print ('<td align=center valign=top>Дата</td>');
    11. print ('<td align=center valign=top>Отвественный</td>');
    12. echo "<td align=center valign=top>Оплачен</td>";
    13. print ('</tr>');
    14. //echo mysql_errno() . ": " . mysql_error(). "\n";
    15. while ($row = mysql_fetch_array($result)) {
    16. if ($row['oplata'] == 'sold') {
    17. echo '<tr align=center bgcolor="#99CC66" valign=top>';
    18. } else {
    19. echo '<tr align=center bgcolor="#FF6666" valign=top>';
    20. }
    21. echo "<td align=center valign=top>" . $row['dog_main'] . "</td>";
    22. echo "<td align=center valign=top>" . $row["konragent"] .  "</td>";
    23. echo "<td align=center valign=top>" . $row["symma"] . "</td>";
    24. echo "<td align=center valign=top>" . $row["data"] . "</td>";
    25. echo "<td align=center valign=top>" . $row["otvet"] . "</td>";
    26. echo "<td align=center valign=top> </td>";
    27. print ('</tr>');
    28. }
    29. print ('</table>');
    30.  
    dog_add.php

    PHP:
    1.  
    2. $dog = 'dogovor';
    3. include "connect.php";
    4. echo "<center>Добавить договор</center>";
    5. echo "<form method='post' action='$PHP_SELF'>";
    6. echo "<table border=1 width='75%' cellspacing=2 cellpading=2 align=center>";
    7. echo "'<tr align=center valign=top>";
    8. echo "<td align=center valign=top>Договор</td>";
    9. echo "<td align=center valign=top>Контрагент</td>";
    10. echo "<td align=center valign=top>Сумма</td>";
    11. echo "<td align=center valign=top>Дата</td>";
    12. echo "<td align=center valign=top>Отвественный</td>";
    13. echo "<td align=center valign=top>Оплачен</td>";
    14. echo "</tr>";
    15. echo "<tr align=center valign=top>";
    16. echo "<td align=center valign=top><input type='text' name='dog_main'></td>";
    17. echo "<td align=center valign=top><input type='text' name='konragent'></td>";
    18. echo "<td align=center valign=top><input type='text' name='symma'></td>";
    19. echo "<td align=center valign=top><input type='text' name='data'></td>";
    20. echo "<td align=center valign=top><input type='text' name='otvet'></td>";
    21. echo "<td align=center valign=top><input type='checkbox' name='oplata' value='sold'></td>";
    22. echo "</tr>";
    23. echo "</table>";
    24. echo "<center>";
    25. echo "<input type='submit' value='Enter'>";
    26. echo "<input type='reset' value='Clear'>";
    27. echo "</center>";
    28. echo "</form>";
    29. $query = "INSERT INTO $dog VALUES(' " . $_POST['dog_main'] . " ', ' " . $_POST['konragent'] . " ', ' " . $_POST['symma'] . " ', ' " . $_POST['data'] . " ', ' " . $_POST['otvet'] . " ', ' " . $_POST['oplata'] . " ')";
    30. $result = mysql_query($query, $connect);
    31.  
     
  2. Johnatan

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

    С нами с:
    6 мар 2008
    Сообщения:
    508
    Симпатии:
    0
    Адрес:
    Испания
    Hash
    вручную, это через MySQL? А что вы там задаёте как значение поля oplata?
    Не забываем, что чекбокс выдаёт значение 'on' если он включён.
     
  3. Hash

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

    С нами с:
    21 июн 2008
    Сообщения:
    14
    Симпатии:
    0
    Через чекбокс передается значение sold
    HTML:
    1. <input type='checkbox' name='oplata' value='sold'>
    вручную, через phpmyadmin
     
  4. Anonymous

    Anonymous Guest

    Я вообще не вижу, что бы вы где то значение чекбокса сохраняли в этом коде...
     
  5. Hash

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

    С нами с:
    21 июн 2008
    Сообщения:
    14
    Симпатии:
    0
    В БД все добавляется, что нужно, но почему-то работают только те, которые были добавлены через phpmyadmin, которые были добавлены через пхп, посредством чекбокса, работать не хотят, но при этом отображаются в БД!!!
    Горбунов Олег
    PHP:
    1. $query = "INSERT INTO $dog VALUES(' " . $_POST['dog_main'] . " ', ' " . $_POST['konragent'] . " ', ' " . $_POST['symma'] . " ', ' " . $_POST['data'] . " ', ' " . $_POST['otvet'] . " ',[b]' " . $_POST['oplata'] . " '[/b])";
     
  6. Hash

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

    С нами с:
    21 июн 2008
    Сообщения:
    14
    Симпатии:
    0
    Блин, может хоть кто-нибудь сможет мне помочь???
     
  7. Johnatan

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

    С нами с:
    6 мар 2008
    Сообщения:
    508
    Симпатии:
    0
    Адрес:
    Испания
    Hash
    ты пробовал проверять что тебе выдаёт $row['oplata'] когда ты из базы получаешь его? В каком формате колонка oplata в базе хранится?
     
  8. Hash

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

    С нами с:
    21 июн 2008
    Сообщения:
    14
    Симпатии:
    0
    $row['oplata'] тоже выдает sold, у ячейки оплата след. параметры varchar 5( когда ставлю 4 те sold которые получены из чекбокса почему-то теряют d и становятся sol )