Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Nie dodaje do bazy
Forum PHP.pl > Forum > Przedszkole
Nico~

  1. <?php
  2.  
  3. // wywolanie polaczenia z baza danych
  4. require "connection.php";
  5. connection();
  6.  
  7. // odbieranie danych z formularza
  8. if(isset($_POST['gospodarz']) and isset($_POST['wynik']) and isset($_POST['gosc']) and isset($_POST['data']) and isset($_POST['godzina']) and isset($_POST['miejsce'])) {
  9. $gospodarz = $_POST['gospodarz'];
  10. $wynik = $_POST['wynik'];
  11. $gosc = $_POST['gosc'];
  12. $data = $_POST['data'];
  13. $godzina = $_POST['godzina'];
  14. $miejsce = $_POST['miejsce'];
  15. if($gospodarz and $wynik and $gosc and $data and $godzina and $miejsce) {
  16. //dodawanie meczu do bazy danych
  17. $ins = mysql_query("INSERT INTO mecze SET gospodarz='$druzyna', wynik='$wynik', gosc='$druzyna', data='$data', godzina='$godzina', miejsce='$miejsce'");
  18. if($ins) echo "Mecz zostal poprawnie dodany";
  19. else echo "Blad nie udalo sie dodac meczu";
  20. }
  21. }
  22. ?>
  23. <form action="dodaj_mecz.php" method="post">
  24. Gospodarz<br/>
  25. <?php
  26. $q = mysql_query("SELECT * FROM druzyny");
  27. echo('<select name="druzyna">');
  28. while($row = mysql_fetch_array($q)) {
  29. echo('<option>'.$row['nazwa_druzyny'].'</option>');
  30. }
  31. echo('</select>');
  32. ?>
  33. <br/>
  34. Wynik:<br />
  35. <input type="text" name="wynik" /><br />
  36. Gosc:<br/>
  37. <?php
  38. $q = mysql_query("SELECT * FROM druzyny");
  39. echo('<select name="druzyna">');
  40. while($row = mysql_fetch_array($q)) {
  41. echo('<option>'.$row['nazwa_druzyny'].'</option>');
  42. }
  43. echo('</select>');
  44. ?>
  45. <br/>
  46. Data:<br />
  47. <input type="text" name="data" /><br />
  48. Godzina:<br />
  49. <input type="text" name="godzina" /><br />
  50. Miejsce:<br />
  51. <input type="text" name="miejsce" /><br />
  52. <input type="submit" value="Dodaj mecz!" />
  53. </form>


Dlaczego nie działa dodawanie do bazy? Co jest nie tak, według mnie jest dobrze, ale niestety tak nie jest. W czym problem ?
Balus
Składnia polecenia INSERT jest chyba nieco inna wink.gif
Nico~
Co z nią jest nie tak? snitch.gif

Co w tym poprawić ?
Damonsson
Włączyć wyświetlanie błędów, chyba, że "Blad nie udalo sie dodac meczu" doskonale mówi Ci, jaki błąd popełniłeś, ale wtedy nie pytałbyś nas.

  1. mysql_query("INSERT INTO mecze SET gospodarz='$druzyna', wynik='$wynik', gosc='$druzyna', data='$data', godzina='$godzina', miejsce='$miejsce'") or die('BŁĄD: '.mysql_error());
wiiir
Na demotywatorach nie było rozwiązania? Aaaa czekaj czekaj moze bedzie w dokumentacji?

dokumentacja
nospor
Do wszystkich "geniuszy" piszących w tym temacie:
Podana tu składnia INSERT jest poprawna.
smile.gif

Zaś jak znaleźć błąd podał już bardzo dobrze Damonsson.
Nico~
Nie rozumiem sad.gif
nospor
facepalmxd.gif

Damonson wyraźnie napisał co masz zrobić
mysql_query("INSERT INTO mecze SET gospodarz='$druzyna', wynik='$wynik', gosc='$druzyna', data='$data', godzina='$godzina', miejsce='$miejsce'") or die('BŁĄD: '.mysql_error());
W ten sposób wyświetla się błąd bazy danych. Masz go wyświetlić i zobaczyć o jakim błędzie informuje cię baza.
Nico~
Wybaczcie ale nie ogarniam sad.gif W jaki sposób mam go wyświetlić ?
nospor
Przecież masz podane. Podał ci kod damonson, podalem ci kod i ja. Jedyne co masz zrobic to go skopiować............ chlopie, rusz te szare komórki w głowie...

Nawet pogrubiłem kawałek kodu, którym różnią się nasze linijki od Twojej...
Nico~
No to podbieniłem te kody już wszcześniej, no i to samo się dzieje co wcześniej. Nie pomogło
nospor
Niemozliwe. Pokaz kod pozmianach i komunikaty bledu

edit:
Czekaj..... Tobie w ogóle nie dochodzi do momentu dodawania. A nie dochodzi poniewaz ten warunek
if(isset($_POST['gospodarz']) and isset($_POST['wynik']) and isset($_POST['gosc']) and isset($_POST['data']) and isset($_POST['godzina']) and isset($_POST['miejsce'])) {
nie jest spełniony. Przecież nie masz takich pól w formularzu, które dałeś w tym warunku.
Nico~
  1. <?php
  2.  
  3. // wywolanie polaczenia z baza danych
  4. require "connection.php";
  5. connection();
  6.  
  7. // odbieranie danych z formularza
  8. if(isset($_POST['gospodarz']) and isset($_POST['wynik']) and isset($_POST['gosc']) and isset($_POST['data']) and isset($_POST['godzina']) and isset($_POST['miejsce'])) {
  9. $gospodarz = $_POST['gospodarz'];
  10. $wynik = $_POST['wynik'];
  11. $gosc = $_POST['gosc'];
  12. $data = $_POST['data'];
  13. $godzina = $_POST['godzina'];
  14. $miejsce = $_POST['miejsce'];
  15. if($gospodarz and $wynik and $gosc and $data and $godzina and $miejsce) {
  16. //dodawanie meczu do bazy danych
  17. $ins = mysql_query("INSERT INTO mecze SET gospodarz='$druzyna', wynik='$wynik', gosc='$druzyna', data='$data', godzina='$godzina', miejsce='$miejsce'") or die('BLAD: '.mysql_error());
  18. if($ins) echo "Mecz zostal poprawnie dodany";
  19. else echo "Blad nie udalo sie dodac meczu";
  20. }
  21. }
  22. ?>
  23. <form action="dodaj_mecz.php" method="post">
  24. Gospodarz<br/>
  25. <?php
  26. $q = mysql_query("SELECT * FROM druzyny");
  27. echo('<select name="druzyna">');
  28. while($row = mysql_fetch_array($q)) {
  29. echo('<option>'.$row['nazwa_druzyny'].'</option>');
  30. }
  31. echo('</select>');
  32. ?>
  33. <br/>
  34. Wynik:<br />
  35. <input type="text" name="wynik" /><br />
  36. Gosc:<br/>
  37. <?php
  38. $q = mysql_query("SELECT * FROM druzyny");
  39. echo('<select name="druzyna">');
  40. while($row = mysql_fetch_array($q)) {
  41. echo('<option>'.$row['nazwa_druzyny'].'</option>');
  42. }
  43. echo('</select>');
  44. ?>
  45. <br/>
  46. Data:<br />
  47. <input type="text" name="data" /><br />
  48. Godzina:<br />
  49. <input type="text" name="godzina" /><br />
  50. Miejsce:<br />
  51. <input type="text" name="miejsce" /><br />
  52. <input type="submit" value="Dodaj mecz!" />
  53. </form>
nospor
Powtarzam:
Cytat
Czekaj..... Tobie w ogóle nie dochodzi do momentu dodawania. A nie dochodzi poniewaz ten warunek
if(isset($_POST['gospodarz']) and isset($_POST['wynik']) and isset($_POST['gosc']) and isset($_POST['data']) and isset($_POST['godzina']) and isset($_POST['miejsce'])) {
nie jest spełniony. Przecież nie masz takich pól w formularzu, które dałeś w tym warunku.

tu masz błąd. Albo nazwij poprawnie pola w formularzu, albo popraw ten warunek.
Nico~
jest poprawnie nazwane ...
nospor
Widzę jesteś odporny na porady i wskazówki... no dobra, mój ostatni chyba post bo cierpliwosc jest na niesamowitym wyczerpaniu. No to jedziem:

znajdź mi proszę w swoim formularzu pola o nazwie gospodarz oraz gosc
Tylko proszę, tym razem zastanów się zanim napiszesz, że te pola istnieją....
Nico~
A dobra już wiem gdzie problem, miałem podobny formularz i było wszystko ok. Ale dobra już naprawiłem
Dzięki za cierpliwośc i pomoc, przeraszam za problemy wink.gif
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.