Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] dodawanie rekordu do bazy
Forum PHP.pl > Forum > Przedszkole
sweety
Witam

Po przejrzeniu forum oraz kursów stworzyłam sobie pliczek do dodawania rekordu, który niedziała sad.gif
Może ktoś z Was wie gdzie popełniłam błąd.

o to kod:
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <?php
  6. if($send=='Wyslij') {
  7. mysql_connect("localhost", "", "");
  8.  
  9.  
  10. mysql_select_db("katalog");
  11.  
  12. $zapytanie = "INSERT INTO firma SET witryna='$witryna', email='$email' ";
  13. $wykonaj = mysql_query ($zapytanie);
  14. echo "<BR>Dane dodane prawidłowo ! Dziękujemy za wypełnieni formularza !";
  15. }
  16. else {
  17. echo "<form method=\"get\" action=\"dodaj1.php\">
  18. <div align=\"center\">
  19. <center>
  20. <table>
  21. <tr>
  22. <td >witryna</td>
  23. <td ><input type=\"text\" name=\"witryna\" </td>
  24. </tr>
  25. <tr>
  26. <td >email</td>
  27. <td ><input type=\"text\" name=\"email\" </td>
  28. </tr>
  29.  <tr>
  30. <td width=\"100%\" colspan=\"2\">
  31. <input type=\"submit\" value=\"Wyslij\" name=\"send\"><input type=\"reset\" value=\"Kasuj\" name=\"B2\"></td>
  32. </tr>
  33. </table>
  34. </center>
  35. </div>
  36. </form>";
  37. }
  38.  
  39. ?>
  40.  
  41. </body>
  42. </html>



pozdrawiam
Adiasz
masz blad w zapytaniu inserujacym INSERT INTO syntax
sweety
no i nadal mi to nie działa sad.gif jak niedodawało tak nie dodaje sad.gif

Nawet kod skopiowany z książeczki też jest be sad.gif

  1. <?php
  2. function InsertRecord( $aadres, $aemail )
  3. {
  4. // Przygotowanie wyrażenia SQL INSERT
  5. $aSQL = "insert into firmy ( adres, email, ";
  6. $aSQL .= " ) values ( '$aadres', '$aemail', ";
  7. $aSQL .= " )";
  8. // Przyłączenie do serwera i wykonanie instrukcji INSERT
  9. $aDBLink = @mysql_connect( "localhost", "", "" );
  10. if ( !empty( $aDBLink ) )
  11. {
  12. if ( mysql_select_db( "katalog_firm", $aDBLink ) == True )
  13. {
  14. $aQResult = mysql_query( $aSQL, $aDBLink );
  15. if ( $aQResult == True )
  16. {
  17. $aResult = mysql_insert_id( $aDBLink );
  18. }
  19. else
  20. {
  21. // print( "Błąd wykonania zapytania<br>" );
  22. $aResult = -1;
  23. }
  24. }
  25. else
  26. {
  27. // print( "Błąd wyboru bazy danych<br>" );
  28. $aResult = -2;
  29. }
  30. }
  31. else
  32. {
  33. // print( "Błąd przy podłączaniu do bazy danych<br>" );
  34. $aResult = -3;
  35. }
  36. return $aResult;
  37. }
  38. ?>


i już w sumie niewiem czy to wina bazy, wina kodu, wina moich początków ale to jest irytujące sad.gif
SebastianSerafin
Podaj strukturę tabeli, jest to pomocne bardzo. W ciemno trochę ciężko powiedzieć czego może być wina.
sweety
struktura to dwa proste pola:
adres
email
o typie varchar
i adres jest kluczem.

To jest dla mnie strasznie dziwne sad.gif połączenie z bazą działa (można wyświetlać, wyszukiwać) a dodawać nie sad.gif.
SebastianSerafin
Ja postępuje tak, jeżeli jest problem z bazą wyświetlam sobie treść kwerendy, zrób tak:

  1. <?php
  2. $zapytanie = "INSERT INTO firma SET witryna='$witryna', email='$email' ";
  3. echo $zapytanie.'<br>';
  4. $wykonaj = mysql_query ($zapytanie);
  5. ?>

Zobaczysz kwerendę, następnie uruchomić ją można w konsoli lub programie do obsługi mysql(polecam MySQL-Front lub Navicat.
Tam podpowie gdzie jest błąd, zmieniasz dotąd aż działa w konsoli lub programie i już widzisz czego wina, czy zapytania, bazy czy może php.
snipe
mozesz zrobic tak jak powiedzial SebastianSerafin badz tak:

  1. <?php
  2. $wykonaj = mysql_query($zapytanie) or die(mysql_error());
  3. ?>


Jak bedziesz miec blad w zapytaniu powinno wywalic Ci go na ekran smile.gif
1maciek
do kodu z pierwszego posta

sprawdz czy $register_globals masz wlaczone na On, jesli nie (zalecane) powinienes do zmiennych z formularza odnosic sie przez tablice $_GET['nazwa_zmiennej']
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.