Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP + MySQL] Problem z mysqli_fetch_assoc()
Forum PHP.pl > Forum > Przedszkole
henio
Tworzę skrypt forum.

Fragment kodu (od 16 linijiki do 57) pliku index.php
  1. <?php
  2. if(@$_GET['id_forum_watek'] && @$_GET['id_forum_dzial'] && @$_GET['czynnosc'])
  3. {
  4. if(@$_POST['tytul'] && @$_POST['tresc'] && @$_POST['czy'])
  5. {
  6. $zapytanie543 = mysqli_query($mysql, "SELECT * FROM `forum_uzytkownicy` WHERE nick='".$_SESSION['user']."'" );
  7.  
  8. while ($row543 = mysqli_fetch_assoc($zapytanie543))
  9. {
  10. $id_forum_user = $row543['id_forum_user'];
  11. }
  12.  
  13. $data_powstania = date("Y-m-d, H:i");
  14.  
  15. $zapytanko = "INSERT INTO forum_topic (tytul, podtytul, id_forum_user, id_forum_dzial, id_forum_watek, data_powsta
    nia) VALUES ('"
    .@$_POST['tytul']."', '".@$_POST['podtytul']."', '$id_forum_user', '".@$_GET['id_forum_dzial']."', '".@$_GET['id_forum_watek']."', '$data_powstania')";
  16. $result = mysqli_query($mysql, $zapytanko) or die('zapytanie: '.$zapytanko.'---blad:'.mysqli_error($mysql));
  17.  
  18. $zapytanko2 = "SELECT * FROM forum_topic WHERE data_powstania = '$data_powstania' AND id_forum_user='$id_forum_user'";
  19. while ($result2 = mysqli_fetch_assoc($zapytanko2))
  20. {
  21. $id_forum_topic = $result2['id_forum_topic'];
  22. }
  23. echo $result2['id_forum_topic'];
  24.  
  25. $zapytanko3 = "INSERT INTO forum_post (tytul, tresc, id_forum_user, id_forum_dzial, id_forum_watek, data_powstania
    , id_forum_topic) VALUES ('"
    .@$_POST['tytul']."', '".@$_POST['tresc']."', '$id_forum_user', '".@$_GET['id_forum_dzial']."', '".@$_GET['id_forum_watek']."', '$data_powstania', '$id_forum_topic')";
  26. $result3 = mysqli_query($mysql, $zapytanko3) or die('zapytanie: '.$zapytanko3.'---blad:'.mysqli_error($mysql));
  27. echo "Done!\n";
  28. }
  29. elseif(@$_POST['czy'])
  30. {
  31. echo "dupa";
  32. }
  33. else
  34. {
  35. naglowek1("Utwórz nowy temat");
  36. echo "<form action='index.php?id_forum_dzial=".@$_GET['id_forum_dzial']."&id_forum_watek=".@$_GET['id_forum_watek']."&czynnosc=utworz_topic' method='POST'>\n";
  37. echo "<table><tr><th colspan='2'>Utwórz nowy temat</th></tr\n";
  38. echo "<tr><th>Temat</th><td><input type='text' maxlenght='25' name='tytul' style='width: 500px'></td><tr>\n";
  39. echo "<tr><th>Opis tematu (Nieobowiązkowy)</th><td><input type='text' maxlenght='65' name='podtytul' style='width: 500px'></td><tr>\n";
  40. echo "<tr><th>Treść wiadomości</th><td><textarea name='tresc' cols='60' rows='16'></textarea></td></tr>\n";
  41. echo "<tr><th colspan='2'><input type='hidden' value='czy' name='czy'><input type='submit' value='Dodaj'></th></tr>\n";
  42. }
  43. ?>


Pod dodaniu topicu wyświetla mi się:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, string given in C:\Program Files\Apache Group\Apache2\htdocs\stronka\forum\index.php on line 33

Przy czym to jest 33 linijka:
while ($result2 = mysqli_fetch_assoc($zapytanko2))
kossa
nie wykonałeś mysql_query a od razu chcesz wynik

  1. <?php
  2. $zapytanko2 = mysql_query("SELECT * FROM forum_topic WHERE data_powstania = '$data_powstania' AND id_forum_user='$id_forum_user'");
  3. while ($result2 = mysqli_fetch_assoc($zapytanko2))
  4. {
  5. $id_forum_topic = $result2['id_forum_topic'];
  6. }
  7. ?>


Łukasz
henio
OO Nie zauwazylem winksmiley.jpg

Nadal ten sam błąd:

  1. <?php
  2. if(@$_GET['id_forum_watek'] && @$_GET['id_forum_dzial'] && @$_GET['czynnosc'])
  3. {
  4. if(@$_POST['tytul'] && @$_POST['tresc'] && @$_POST['czy'])
  5. {
  6. $zapytanie543 = mysqli_query($mysql, "SELECT * FROM `forum_uzytkownicy` WHERE nick='".$_SESSION['user']."'" );
  7.  
  8. while ($row543 = mysqli_fetch_assoc($zapytanie543))
  9. {
  10. $id_forum_user = $row543['id_forum_user'];
  11. }
  12.  
  13. $data_powstania = date("Y-m-d, H:i");
  14.  
  15. $zapytanko = "INSERT INTO forum_topic (tytul, podtytul, id_forum_user, id_forum_dzial, id_forum_watek, data_powsta
    nia) VALUES ('"
    .@$_POST['tytul']."', '".@$_POST['podtytul']."', '$id_forum_user', '".@$_GET['id_forum_dzial']."', '".@$_GET['id_forum_watek']."', '$data_powstania')";
  16. $result = mysqli_query($mysql, $zapytanko) or die('zapytanie: '.$zapytanko.'---blad:'.mysqli_error($mysql));
  17.  
  18. $zapytanko2 = "SELECT * FROM forum_topic WHERE data_powstania = '$data_powstania' AND id_forum_user='$id_forum_user'";
  19. $result2 = mysqli_query($mysql, $zapytanko2) or die('zapytanie: '.$zapytanko2.'---blad:'.mysqli_error($mysql));
  20. while ($result2 = mysqli_fetch_assoc($zapytanko2))
  21. {
  22. $id_forum_topic = $result2['id_forum_topic'];
  23. }
  24. echo $result2['id_forum_topic'];
  25.  
  26. $zapytanko3 = "INSERT INTO forum_post (tytul, tresc, id_forum_user, id_forum_dzial, id_forum_watek, data_powstania
    , id_forum_topic) VALUES ('"
    .@$_POST['tytul']."', '".@$_POST['tresc']."', '$id_forum_user', '".@$_GET['id_forum_dzial']."', '".@$_GET['id_forum_watek']."', '$data_powstania', '$id_forum_topic')";
  27. $result3 = mysqli_query($mysql, $zapytanko3) or die('zapytanie: '.$zapytanko3.'---blad:'.mysqli_error($mysql));
  28. echo "Done!\n";
  29. }
  30. elseif(@$_POST['czy'])
  31. {
  32. echo "dsgh";
  33. }
  34. else
  35. {
  36. naglowek1("Utwórz nowy temat");
  37. echo "<form action='index.php?id_forum_dzial=".@$_GET['id_forum_dzial']."&id_forum_watek=".@$_GET['id_forum_watek']."&czynnosc=utworz_topic' method='POST'>\n";
  38. echo "<table><tr><th colspan='2'>Utwórz nowy temat</th></tr\n";
  39. echo "<tr><th>Temat</th><td><input type='text' maxlenght='25' name='tytul' style='width: 500px'></td><tr>\n";
  40. echo "<tr><th>Opis tematu (Nieobowiązkowy)</th><td><input type='text' maxlenght='65' name='podtytul' style='width: 500px'></td><tr>\n";
  41. echo "<tr><th>Treść wiadomości</th><td><textarea name='tresc' cols='60' rows='16'></textarea></td></tr>\n";
  42. echo "<tr><th colspan='2'><input type='hidden' value='czy' name='czy'><input type='submit' value='Dodaj'></th></tr>\n";
  43. }
  44. ?>
nevt
przyjacielu oślepłeś czy ki diabeł ???
Cytat
$zapytanko2 = "SELECT * FROM forum_topic WHERE data_powstania = '$data_powstania' AND id_forum_user='$id_forum_user'";
$result2 = mysqli_query($mysql, $zapytanko2) or die('zapytanie: '.$zapytanko2.'---blad:'.mysqli_error($mysql));
while ($result2 = mysqli_fetch_assoc($zapytanko2))
...

a powinno być
  1. <?php
  2. ...
  3. $result2 = mysqli_query($mysql, $zapytanko2) or die('zapytanie: '.$zapytanko2.'---blad:'.mysqli_error($mysql));
  4. while ($result2 = mysqli_fetch_assoc($result2))
  5. ...
  6. ?>
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.