Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z formularzem i insert
spit
post
Post #1





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

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


Czesc
Probuje zrobic na stronie system komentarzy, mam taki kod dodawania:
  1. <form method="post">
  2. <input name="nick" type="text" value="nick" />
  3. <input name="mail" type="text" value="mail" /><br />
  4. <textarea name="tresc" cols="50" rows="5"></textarea>
  5. <input type="submit" name="submit" value="Dodaj" />
  6. </form>
  7. <?php
  8. $nick = $_POST['nick']; 
  9. $mail = $_POST['mail'];
  10. $tresc = $_POST['tresc'];
  11. $tresc=nl2br(wordwrap(str_replace("<", "&lt;", $tresc), 50, " ", 1));
  12.  
  13. $polaczenie = mysql_connect('localhost','user','pass') or die('Polaczenie nieudane'); 
  14. mysql_select_db('baza') or die('Wybranie bazy nieudane'); 
  15. $zapytanie = "INSERT INTO 'komentarze' VALUES ('$zespol','$nick','$mail','$tresc',now())";
  16. $wynik = mysql_query($zapytanie) or die('blad'); 
  17. mysql_close($polaczenie);
  18. ?>

i niestety gdy wchodze na strone z tym wlasnie kodem, dostanie blad [or die('blad'); ]. Co jest zle?

Ten post edytował spit 23.04.2006, 00:49:11
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
GrayHat
post
Post #2





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


przed VALUES musisz okreslic pola do ktorych wpisujesz dane ze zmiennych po VALUES (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

  1. INSERT
  2. INTO komentarze
  3. (pole1,pole2,pole3) VALUES ('wartosc1','wartosc2','wartosc3')


pozdrawiam
Go to the top of the page
+Quote Post
siemakuba
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 112
Pomógł: 20
Dołączył: 10.04.2005

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


Cytat
przed VALUES musisz okreslic pola do ktorych wpisujesz dane ze zmiennych po VALUES


to niekoniecznie. Jezeli robisz INSERT dla wszystkich pól, nie musisz ich wymieniać.

Myśle że tu problem leży w cudzysłowiach wokół nazwy tabeli. Wyglądają na zwykły pojedyńczy cudzysłów, a mogłoby ich nie być wcale. Jeżeli już mają koniecznie być to muszą to być "back-tick" (nie wiem jak to sie zwie po polsku) --> ` - na klawiaturze (u mnie) na tym samym klawiszu co tylda (~).

pozdr.
Go to the top of the page
+Quote Post
MrMag
post
Post #4





Grupa: Zarejestrowani
Postów: 154
Pomógł: 5
Dołączył: 24.02.2004

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


nie trzeba.

zrob sobie mysql_error() i zobacz co jest nie tak. moze jakis problem z tabelami bazy.

tak na oko to brak zmiennej $zespol przed query

Ten post edytował MrMag 23.04.2006, 01:24:29
Go to the top of the page
+Quote Post
GrayHat
post
Post #5





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


potrzeba bo gosc nie wymienil ID... czyli nie leci wszystkich pol... cudzyslow z nazwy tabeli tez powinien zniknac...
Go to the top of the page
+Quote Post
spit
post
Post #6





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

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


Dobra, zrobiłem w bazie od nowa tabele, i niby dodaje, ale raz, ze dodaje rekordy dwukrotnie, a dwa, ze pola sa puste. Wypelnione jest tylo to pole, ktoro pobierane jest z url i data (funkcja now()).
Go to the top of the page
+Quote Post
GrayHat
post
Post #7





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


ok to zrob to tak jak powinno to wygladac...
  1. <?php
  2.  
  3. $zapytanie = "INSERT INTO komentarze (pole,pole,pole,pole,pole) VALUES ('".$zespol."','".$nick."','".$mail."','".$tresc."',now())";
  4.  
  5. ?>


tak wogole to gdzie deklarujesz zmienna $zespol??
Go to the top of the page
+Quote Post
spit
post
Post #8





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

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


Zrobilem tak - nie pomoglo.
$zespoly deklaruje jeszcze na poczatku
  1. <?php
  2. $zespol=$_GET['zespol'];
  3. ?>
, i potem uzywam w polaczeniach mysql, by nie grzebac w includach wielu plikow.
Go to the top of the page
+Quote Post
GrayHat
post
Post #9





Grupa: Zarejestrowani
Postów: 566
Pomógł: 18
Dołączył: 23.08.2003
Skąd: Łomża

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


a daj
  1. <?php
  2. echo $zapytanie;
  3. ?>

dobrze wydrukowalo zapytanie? tzn ze wszystkimi opcjami?

Ten post edytował GrayHat 23.04.2006, 11:09:01
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.12.2025 - 15:53