Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Nie wysyła komentarza
Drav
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 14.09.2008
Skąd: Polska

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


Witam, mam dosyć banalny problem, ale niestety nie umiem go rozwiazac, coś (jakis drobny bład) w tym kodzie powoduje, ze komentarz nie chce sie wysłac.
Jesli bedzie taka potrzeba, to podesle kompletny kod strony.

  1. function komentarz_pokaz($typ)
  2. {
  3. global $db;
  4. global $i;
  5. $zapytanie_2 = "select * from komentarz_".$typ." where ".$typ."id=".$i;
  6. $wynik_2 = $db->query($zapytanie_2);
  7. $wiersz_2 = $wynik_2->fetch_assoc();
  8. $ilekomentarzy = $wynik_2->num_rows;
  9. if($ilekomentarzy > 0)
  10. {
  11. echo '
  12. </div>
  13. <h2>Komentarze</h2>
  14. <div class="komentarz">
  15. <p>'.stripslashes($wiersz_2["autor"]).' | '.stripslashes($wiersz_2["data"]).'</p>
  16. '.stripslashes($wiersz_2["tresc"]).'
  17. </div>
  18. </div>';
  19. }
  20. else
  21. {
  22. echo '
  23. </div>
  24. <h2>Brak Komentarzy</h2>
  25. </div>';
  26. }
  27. $autor = $_POST['autor'];
  28. $test = $_POST['test'];
  29. settype($test, "string");
  30. $tresc = $_POST['tresc'];
  31. if(empty($autor) || empty($komentarz) || $test != 9)
  32. {
  33. echo '
  34. <form method="post" action="index.php?s='.$typ.'&id='.$i.'">
  35. <h2>Skomentuj</h2>
  36. <input name="autor" type="text" value="Nick" /><br/>
  37. <input name="test" type="text" value="dwa dodać siedem to..." /><br/>
  38. <textarea name="tresc" cols="70" rows="5"></textarea>
  39. <input type="submit" value="Dodaj komentarz" />
  40. </form>
  41. ';
  42. }
  43. else
  44. {
  45. $dodaj = "insert into komentarz_".$typ." values ('".$i."', '".$autor."', '".$tresc."')";
  46. $dodano = $db->query($dodaj);
  47. if($dodano)
  48. {
  49. echo 'Komentarz dodany pomyślnie';
  50. }
  51. }
  52. }


Ten post edytował Drav 18.06.2010, 22:09:56


--------------------
XHTML | CSS | PHP (Uczę się :D)
Go to the top of the page
+Quote Post
yevaud
post
Post #2





Grupa: Zarejestrowani
Postów: 471
Pomógł: 89
Dołączył: 29.07.2008
Skąd: Warszawa

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


moze daj jakis komunikat bledu
Go to the top of the page
+Quote Post
Drav
post
Post #3





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 14.09.2008
Skąd: Polska

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


Właśnie nie ma żadnego błędu. Już poradziłem sobie z tym problemem (zamiast $komentarz ma byc $tekst w linii 31) ale mam następny, mianowicie po kliknięciu w pole SUBMIT nadal się on nie dodaje, pojawia sie puste miejsce, a wiec cała pętla if, else nie jest wykonywana. Ktos wie czemu tak sie dzieje?

STRUKTURA BAZY
  1. `komentarzid` int(10) unsigned NOT NULL auto_increment,
  2. `newsid` char(5) character set utf8 default NULL,
  3. `autor` char(30) character set utf8 default NULL,
  4. `data` date NOT NULL,
  5. `tresc` text character set utf8,
  6. PRIMARY KEY (`komentarzid`)


raczkuje w mysql, takze mozliwe, ze zrobiłem jakis banalny bład, jesli byscie mi go pokazali to byłbym bardzo wdzieczny smile.gif

Ten post edytował Drav 18.06.2010, 22:35:18


--------------------
XHTML | CSS | PHP (Uczę się :D)
Go to the top of the page
+Quote Post
adam882
post
Post #4





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

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


Nie wiem czy to powinno pomóc, ale w każdym bądź razie powinieneś bardziej sprecyzować INSERT, przykładowo:

$dodaj = "insert into komentarz_".$typ." (parentid,autor,tresc) values ('".$i."', '".$autor."', '".$tresc."')";

BTW: dodając do bazy dane używaj przynajmniej addslashes(), jeśli klasa bazy danych nie filtruje zapytania

Ten post edytował adam882 18.06.2010, 23:28:10
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 Aktualny czas: 21.08.2025 - 14:45