Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[PROBLEM]Prosty skrypt komentarzy


Rekomendowane odpowiedzi

Opublikowano

Ema

 

Potrzebuje pomocy ;)

 

Mam skrypt komentarzy:

 

Kod;

 

<?
DEFINE ('DB_USER', ''); // uzytkownik bazy danych
DEFINE ('DB_PASSWORD', ''); // Haslo bazy danych
DEFINE ('DB_HOST', ''); // Host bazy danych
DEFINE ('DB_NAME', ''); // Nazwa bazy danych
// Nawiązuje połączenie i wybiera bazę danych.
$dbc = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) OR die ('Nie mogłem połączyć się z MySQL-em: ' . mysql_error() );
mysql_select_db(DB_NAME) OR die ('<b>Nie udało mi się wybrać bazy danych:</b> ' . mysql_error() );
<?
$zapytanie = "SELECT username FROM users";
mysql_query("set names utf8;");
$rezultat = mysql_query ($zapytanie);
while ($dane = mysql_fetch_array ($rezultat, MYSQL_ASSOC)) { ;
?>
<form action="<? $_SERVER['PHP_SELF'] ?>" method="POST">
 <input type="text" name="username" id="username" value="<?=$dane['username']?>" size="40" maxlength="20" readonly /> <br />
 <textarea  name="komentarz"> </textarea><br />
 <input type="hidden" name="kom" value="" />
 <input type="submit" value="wyslij" />
</form>

<?
if (isset($_POST['kom'])) {
$tresc = $_POST['komentarz'];
$autor = $dane['username'];
//Zapytanie z bazy danych zapisujące komentarz
$zapytanie = "INSERT INTO komentarze(tresc, autor) VALUES('$tresc', '$autor')";
$rezultat = mysql_query ($zapytanie);
}
}
?>

 

I wszystko jest ok do kiedy nie wcisnę przycisku " Wyślij "

 

Wtedy mam taki błąd:

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/u516086896/public_html/view.php on line 172

 

 

172 linijka to:

 

while ($dane = mysql_fetch_array ($rezultat, MYSQL_ASSOC)) { ;

 

A w bazie MySQL w tabeli " komentarze ", w polach "autor" i "tresc". tworzą się puste pola

XPA9.png

Opublikowano

Spróbuj

$zapytanie = mysql_query( "SELECT username FROM users");
mysql_query("set names utf8;");
while ($dane = mysql_fetch_array ($zapytanie)) {
tutaj powinieneś mieć informacje co ma wykonywać... ;
?>

 

http://phpedia.pl/wiki/Supplied_argument_is_not_a_valid_MySQL_result_resource

Poczytaj

 

Poza tym, w jakim programie kod piszesz ? Składnie Ci koloruje ? Nie domykasz skryptów, jak np tutaj

<? //tutaj zacząłeś
DEFINE ('DB_USER', ''); // uzytkownik bazy danych
DEFINE ('DB_PASSWORD', ''); // Haslo bazy danych
DEFINE ('DB_HOST', ''); // Host bazy danych
DEFINE ('DB_NAME', ''); // Nazwa bazy danych
// Nawiązuje połączenie i wybiera bazę danych.
$dbc = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) OR die ('Nie mogłem połączyć się z MySQL-em: ' . mysql_error() );
mysql_select_db(DB_NAME) OR die ('<b>Nie udało mi się wybrać bazy danych:</b> ' . mysql_error() );
...a gdzie koniec?

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...