Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP+MySQL] Problem z formularzem, Nie dodaje do bazy danych z formularza
roobik
post 7.12.2007, 19:35:48
Post #1





Grupa: Zarejestrowani
Postów: 410
Pomógł: 5
Dołączył: 25.01.2005
Skąd: Wrocław

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


Witam!
Zacznę od struktury tabeli. Mam w niej pola:
id, date, text1, text2, text3, author, status, opened
A oto formularz, z którego dane powinny (a nie są ) być dodawane do bazy:
  1. echo '<form name="form" method="post" action="test.php?option=add_ok">
  2. <table border="0" cellspacing="3" cellpadding="0" align="center">
  3. <tr>
  4. <td class="uni_01" valign="top"><div align="right">nick</div></td>
  5. <td class="uni_01">';
  6. if(is_user_login()=='yes') echo '<b>'.$info[1].'<input type="hidden" name="author" value="'.$info[1].'">';
  7. else
  8. echo '<input type="text" name="author" size="30" value='.$author.'>';
  9. echo '</td>
  10. </tr>
  11. <tr>
  12. <td class="uni_01" valign="top"><div align="right"><b>text1: </div></td>
  13. <td class="uni_01">
  14. <input type="text" name="text1" size="30" value='.$text1.'>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td class="uni_01" valign="top"><div align="right"><b>text2: </div></td>
  19. <td class="uni_01">
  20. <input type="text" name="text2" size="30" value='.$text2.'>
  21. </td>
  22. </tr>
  23. <tr>
  24. <td class="uni_01"valign="top"><div align="right"><b>text3: </div></td>
  25. <td class="uni_01">
  26. <input type="text" name="text3" size="30" value='.$text3.'>
  27. </tr>
  28. <tr>
  29. <td align="right" class="uni_01">&nbsp;</td>
  30.  
  31.  
  32.  
  33. <td class="uni_01">
  34.  
  35. <input style="font-weight: bold;" type="submit" name="ok" value="dodaj">
  36. <input type="reset" name="Reset" value="wyczyść">
  37.  
  38.  
  39.  
  40.  
  41. </td>
  42. </tr>
  43. </form>';
  44.  
  45.  
  46. }
  47. $query = "INSERT INTO testowa VALUES(NULL, now(), '$text1', '$text2', '$text3', '$author', '1', '')";
  48. mysql_query($query);
  49. if ($text1!='' && $author!='' && $text3!='')
  50. {
  51. mysql_query($query);
  52. }
  53.  
  54.  
  55.  
  56. else { echo '<center>Aby dodać - <a href="login.php"><u>zaloguj się</u></a>.</center>';
  57. }

Niestety - dane z formularza nie są dodawane do bazy.... Bardzo proszę o pomoc...
Go to the top of the page
+Quote Post
dziurson
post 7.12.2007, 19:43:17
Post #2





Grupa: Zarejestrowani
Postów: 145
Pomógł: 16
Dołączył: 19.07.2007
Skąd: Elbląg

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


może problem leży po stronie REGISTER_GLOBALS questionmark.gif


--------------------
Go to the top of the page
+Quote Post
roobik
post 7.12.2007, 19:48:57
Post #3





Grupa: Zarejestrowani
Postów: 410
Pomógł: 5
Dołączył: 25.01.2005
Skąd: Wrocław

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


register_globals: Off
:|
Go to the top of the page
+Quote Post
dziurson
post 7.12.2007, 19:50:56
Post #4





Grupa: Zarejestrowani
Postów: 145
Pomógł: 16
Dołączył: 19.07.2007
Skąd: Elbląg

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


no i masz odpowiedź
zamiast pisać $text1 pisz $_POST[text1]

i tak z każdą zmienną


--------------------
Go to the top of the page
+Quote Post
roobik
post 7.12.2007, 19:54:05
Post #5





Grupa: Zarejestrowani
Postów: 410
Pomógł: 5
Dołączył: 25.01.2005
Skąd: Wrocław

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


Jeszcze coprawda nie sprawdziłem, lecz mam takie pytanie:
czy zamiast $_POST[text1] można $_GET[text1] ?

Ten post edytował roobik 7.12.2007, 19:54:34
Go to the top of the page
+Quote Post
dziurson
post 7.12.2007, 19:55:43
Post #6





Grupa: Zarejestrowani
Postów: 145
Pomógł: 16
Dołączył: 19.07.2007
Skąd: Elbląg

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


ale wtedy należy zmienić sposób przesyłania danych na get

i pamiętaj o podkreśleniu ($_POST[])


--------------------
Go to the top of the page
+Quote Post
marcio
post 7.12.2007, 19:57:48
Post #7





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


nie widze polaczenia do bazy i tak powinno to wygladac mysql_query($query, $zmienna_z_polaczeniem_do_bazy);


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
roobik
post 7.12.2007, 20:57:40
Post #8





Grupa: Zarejestrowani
Postów: 410
Pomógł: 5
Dołączył: 25.01.2005
Skąd: Wrocław

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


Połączenie z bazą jest w innym pliku. To, co podałem wyżej to jest tylko część większego pliku, do którego jest zainkludowany config...
Go to the top of the page
+Quote Post
JaRoPHP
post 7.12.2007, 22:12:18
Post #9





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Cytat(dziurson @ 7.12.2007, 19:50:56 ) *
no i masz odpowiedź
zamiast pisać $text1 pisz $_POST[text1]
@dziurson zwracam dzisiaj po raz drugi uwagę: najpierw sprawdź, a potem się chwal publicznie.

Powinno być:
  1. <?php
  2. $_POST['text1'];
  3. ?>

@roobik - wprowadź większą kontrolę w swoich skryptach:
  1. <?php
  2. $sql = "INSERT INTO.....";
  3. echo $sql; // tymczasowe rozwiązanie, może by przydatne
  4. mysql_query($sql) or die(mysql_error());
  5. ?>


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
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: 14.07.2025 - 06:24