Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]PHP+SQL baza nie zapisuje danych ? Proszę o pomoc., Baza sql dodaje w tabeli wiersz ale nie zapisuje danych
mavricqs
post 30.01.2011, 15:33:44
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 30.01.2011

Ostrzeżenie: (0%)
-----


Witam serdecznie oczywiście zaznaczę że są to moje pierwsze kroki z php i sql smile.gif siedzę nad tym problemem już 3 dzień i nie wiem co zrobić. Staram się stworzyć sobie stronę ułatwiającą mi pracę ogólny zarys jest taki że przez preg_match strona pobiera dane z allegro dane te chciałbym wysłać do bazy sql grupować je jako dzienne statystyki a następnie stworzyć sobie stronę generującą wykres uwzględniający dzienny przyrost w danych. Problemem jest dla mnie zapisanie danych do bazy sql korzystałem z tutka w którym podany był gotowy kod na którym postanowiłem się nauczyć zasad działania komunikacji php sql i niby wszystko działa ale jest taki problem że baza danych tworzy odpowiednia tabele dodaje w niej wiersz i poszczególne zmienne ale zmienne te są puste mimo że wcześniej podawane są ręcznie przez plik html. cały skrypt podzielony jest na kilka plików poniżej podaje ich kody.

P.S. Mój hosting to domeny.pl

Na początek html w którym pobierane są dane add.html
  1. <form action="insert.php" method="post">
  2. First Name: <input type="text" name="first"><br>
  3. Last Name: <input type="text" name="last"><br>
  4. Phone: <input type="text" name="phone"><br>
  5. Mobile: <input type="text" name="mobile"><br>
  6. Fax: <input type="text" name="fax"><br>
  7. E-mail: <input type="text" name="email"><br>
  8. Web: <input type="text" name="web"><br>
  9. <input type="Submit">
  10. </form>


Następnie dbinfo.inc.php
  1. <?
  2. $username="..."; // tu podaje nazwę użytkownika bazy danych
  3. $password="....."; // tu podaję hasło do bazy danych
  4. $database="......"; // tu podaje nazwę bazy danych
  5. ?>


Kolejny plik to insert.php czyli plik zapisujący dane do bazy
  1. <?
  2. include("dbinfo.inc.php");
  3. mysql_connect(localhost,$username,$password);
  4. @mysql_select_db($database) or die( "Unable to select database");
  5.  
  6. $query = "INSERT INTO contacts VALUES ('','$first','$last','$phone','$mobile','$fax','$email','$web')";
  7. mysql_query($query);
  8.  
  9. ?>


i plik index.php sterujący tym wszystkim
  1. <?
  2. include("dbinfo.inc.php");
  3. mysql_connect(localhost,$username,$password);
  4. @mysql_select_db($database) or die( "Unable to select database");
  5. $query="SELECT * FROM contacts";
  6. $result=mysql_query($query);
  7.  
  8. $num=mysql_numrows($result);
  9.  
  10.  
  11. echo "<b><center>Database Output</center></b><br><br>";
  12.  
  13. ?>
  14. <table border="0" cellspacing="2" cellpadding="2">
  15. <tr>
  16. <th><font face="Arial, Helvetica, sans-serif">Name</font></th>
  17. <th><font face="Arial, Helvetica, sans-serif">Phone</font></th>
  18. <th><font face="Arial, Helvetica, sans-serif">Mobile</font></th>
  19. <th><font face="Arial, Helvetica, sans-serif">Fax</font></th>
  20. <th><font face="Arial, Helvetica, sans-serif">E-mail</font></th>
  21. <th><font face="Arial, Helvetica, sans-serif">Website</font></th>
  22. </tr>
  23.  
  24. <?
  25. $i=0;
  26. while ($i < $num) {
  27. $first=mysql_result($result,$i,"first");
  28. $last=mysql_result($result,$i,"last");
  29. $phone=mysql_result($result,$i,"phone");
  30. $mobile=mysql_result($result,$i,"mobile");
  31. $fax=mysql_result($result,$i,"fax");
  32. $email=mysql_result($result,$i,"email");
  33. $web=mysql_result($result,$i,"web");
  34. ?>
  35.  
  36. <tr>
  37. <td><font face="Arial, Helvetica, sans-serif"><? echo "$first $last"; ?></font></td>
  38. <td><font face="Arial, Helvetica, sans-serif"><? echo "$phone"; ?></font></td>
  39. <td><font face="Arial, Helvetica, sans-serif"><? echo "$mobile"; ?></font></td>
  40. <td><font face="Arial, Helvetica, sans-serif"><? echo "$fax"; ?></font></td>
  41. <td><font face="Arial, Helvetica, sans-serif"><a href="mailto:<? echo "$email"; ?>">E-mail</a></font></td>
  42. <td><font face="Arial, Helvetica, sans-serif"><a href="<? echo "$web"; ?>">Website</a></font></td>
  43. </tr>
  44. <?
  45. ++$i;
  46. }
  47. echo "</table>";
  48.  
  49.  
  50. ?>


Proszę o pomoc bo naprawdę nie mogę zrozumieć dlaczego te dane nie są zapisywane w mojej bazie.
Nadmieniam że jeśli w bazie danych dodam wartości do odpowiednich pól ręcznie to dane są wyświetlane poprawnie
Go to the top of the page
+Quote Post
PanGuzol
post 30.01.2011, 16:16:11
Post #2





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

Ostrzeżenie: (0%)
-----


Ponieważ masz wyłączone register_globals (i dobrze, że tak jest) więc zmienne $first, $last, $phone, $mobile, $fax, $email, $web w pliku insert.php są puste, wartości pól z twojego formularza znajdują się w tablicy $_POST.


--------------------
Sposób na życie? Uśmiech na twarzy :D
"Widzę więcej, wiem więcej, tak to jest mniej więcej"
"NIE kradnij, rząd nielubi konkurencji"
Go to the top of the page
+Quote Post
mavricqs
post 30.01.2011, 16:38:18
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 30.01.2011

Ostrzeżenie: (0%)
-----


Zmieniłem w pliku index kod na taki
  1. $first=mysql_result($result,$i,$_POST[first]);
  2. $last=mysql_result($result,$i,$_POST[last]);
  3. $phone=mysql_result($result,$i,$_POST[phone]);
  4. $mobile=mysql_result($result,$i,$_POST[mobile]);
  5. $fax=mysql_result($result,$i,$_POST[fax]);
  6. $email=mysql_result($result,$i,$_POST[email]);
  7. $web=mysql_result($result,$i,$_POST[web]);


W tej chwili we wszystkich polach zwracany jest $i czyli numer wiersza w tabeli.
Go to the top of the page
+Quote Post
PanGuzol
post 30.01.2011, 17:05:31
Post #4





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

Ostrzeżenie: (0%)
-----


Czytanie ze zrozumieniem się kłania.
Pisałem o pliku insert a nie index.


--------------------
Sposób na życie? Uśmiech na twarzy :D
"Widzę więcej, wiem więcej, tak to jest mniej więcej"
"NIE kradnij, rząd nielubi konkurencji"
Go to the top of the page
+Quote Post
mavricqs
post 30.01.2011, 17:43:24
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 30.01.2011

Ostrzeżenie: (0%)
-----


Dziękuję bardzo za pomoc pomogło smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 10:38