Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Dodaje zera zamiast liczby
Forum PHP.pl > Forum > Przedszkole
kuba_pilach
Witam, mam następujący problem. Pierw podam kod, by coś oświecić:
  1. <?php
  2.  
  3. // dołączenie plików funkcji tej aplikacji
  4. require_once('funkcje_wyswietl.php');
  5. // początek wywietlania HTML
  6. $urldwa = "index.php";
  7. tworz_naglowek_html('Dodawanie nowej oceny');
  8. if (isset($_SESSION['login'])) { // dostęp dla zalogowanego użytkownika
  9.  
  10. ?>
  11. <hr />
  12. <?php
  13.  
  14. // odbieramy dane z formularza
  15. $session = $_SESSION['login'];
  16. $nauczyciel = $_POST['nauczyciel'];
  17. $przedmiot = $_POST['przedmiot'];
  18. $uwaga = $_POST['uwaga'];
  19. $data1 = $_POST['data1'];
  20. $data2 = $_POST['data2'];
  21. $data3 = $_POST['data3'];
  22.  
  23.  
  24. if ($nauczyciel and $uwaga and $przedmiot and $data1 and $data2 and $data3) { /* 1 */
  25.  
  26. // laczymy sie z baza danych
  27. $connection = mysql_connect('localhost', 'kuba', 'ku2010ba')
  28. or die('Brak polaczenia z serwerem MySQL');
  29. $db = mysql_select_db('dzienniczek', $connection)
  30. or die('Nie moge polaczyc sie z baza danych');
  31.  
  32. $zapytanieilosc = mysql_query("SELECT Nauczyciele.NAZWA FROM Nauczyciele WHERE Nauczyciele.NAZWA = '$nauczyciel'")
  33. or die('Błąd zapytania: '.mysql_error());
  34. $ile = mysql_num_rows($zapytanieilosc);
  35.  
  36. if ($ile == 0) { /* 2 */
  37.  
  38. $insdwa = mysql_query("INSERT INTO Nauczyciele VALUES('NULL', '$nauczyciel')")
  39. }
  40. $idnauczyciela = mysql_query("SELECT Nauczyciele.ID FROM Nauczyciele WHERE Nauczyciele.NAZWA='$nauczyciel'")
  41. $idn = mysql_fetch_assoc($idnauczyciela);
  42.  
  43. $idusera = mysql_query("SELECT id FROM uzytkownik WHERE login='$session'")
  44. $idu = mysql_fetch_assoc($idusera);
  45. $idu['id'] = $idus;
  46. $idn['ID'] = $idna;
  47. $data = $data1."-".$data2."-".$data3;
  48. $ins = mysql_query("INSERT INTO Uwagi VALUES( '$idus', '$idna', '$przedmiot', '$uwaga', '$data' )")
  49. or die('Błąd zapytania: '.mysql_error());
  50. if($ins) echo "Przedmiot zostal dodany poprawnie";
  51. else echo "Blad nie udalo sie dodac nowego rekordu";
  52.  
  53. mysql_close($connection);
  54.  
  55. } else { /* 1 */
  56. echo "Błąd!!!";}
  57.  
  58. wyswietl_menu_uzyt();
  59. tworz_stopke_html();
  60. } else { /* 1 */
  61. ?>
  62. <script type="text/javascript">
  63. window.location.href='<?=$urldwa?>';
  64. </script>
  65. <?php
  66. }
  67. ?>

I problem w tym, że zamiast id_usera z sesji i bazy danych, a także zamiast id nauczyciela z bazy dodaje zera...
Wie ktoś może o co chodzi?questionmark.gif
Dzięki z góry
yevaud
0. Twoj problem to linie 49-50 ktore nie maja zadnego sensu, zdaje sie ze odwrotnie przypisujesz
1. poza tym wciecia od linii 42 nie maja sensu
2. i poczytaj o sql injection, najlepiej uzywaj PDO
kuba_pilach
Usunąłem tamte dwie linijki i ulepszyłem zapytanie:
  1. $ins = mysql_query("INSERT INTO Uwagi VALUES( '".$idu['id']."', '".$idna['ID']."', '$przedmiot', '$uwaga', '$data' )")

Lecz nadal ten sam problem,... dodaje zera :/
Wie ktoś może o co jeszcze może chodzić?
Dzięki z góry
kadlub
Cytat(kuba_pilach @ 13.02.2011, 15:43:22 ) *
Usunąłem tamte dwie linijki i ulepszyłem zapytanie:
  1. $ins = mysql_query("INSERT INTO Uwagi VALUES( '".$idu['id']."', '".$idna['ID']."', '$przedmiot', '$uwaga', '$data' )")

Lecz nadal ten sam problem,... dodaje zera :/
Wie ktoś może o co jeszcze może chodzić?
Dzięki z góry

a weź spróbuj tak '{$idu['id']}'
zamiast $idna powinno być chyba $idn
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.