Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd z mysql_fetch_array
Forum PHP.pl > Forum > Przedszkole
diller24
oto skrypt jaki teoretycznie powinien dzialać (całość zapisana w kodzie)
<html>
<head>
<title>klient widok</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
</head>
<body>
<p> </p><table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="35%"><?php
// podłączamy plik connection.php
// nawiazujemy polaczenie
$connection = @mysql_connect('localhost', 'root', 'krasnal')
// w przypadku niepowodznie wyświetlamy komunikat
or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
// połączenie nawiązane ;-)
echo "Udało się połączyć z serwerem!<br />";
// nawiązujemy połączenie z bazą danych
$db = @mysql_select_db('test', $connection)
// w przypadku niepowodzenia wyświetlamy komunikat
or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
// połączenie nawiązane ;-)
echo "Udało się połączyć z bazą dancych!";

// dodajemy rekord do bazy
$dipo = @mysql_query("INSERT INTO cms WHERE link='$link' ");
while($row = mysql_fetch_array($dipo));
{
print "<p align=\"left\"><font face=\"Verdana\" size=\"2\">
<a href=\"index.php?nazwa={$row["link"]}\">{$row["link"]}</font></a>";
print" </p>";
} ;
?></td>
<td width="65%"> </td>
</tr>
</table>
</body>
</html>

problem jest z pogrubioną częścią skryptu dla jasnosci w bazie danych są dodane wartości więc nie powinno być problemów z odczytem i tworzeniem nowych linków bo takie ma przeznaczenie napisany skrypt. Pytanie co jest nie tak ?
oto komunikat jaki otrzymuję po sprzewdzeniu działania skryptu:

Udało się połączyć z serwerem!
Udało się połączyć z bazą dancych!
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\cwiczenia\klient.php on line 26 (linia 26 to pogrubiony text)
kossa
1. dla testów usuń ukrywanie błędów: @
2. jak masz pętlę to nie może być średnika po mysql_fetch_array($dipo));
3. błąd oznacz że masz błąd z zapytaniu, sparwdź czy wartość $link coś zawiera
4. a najważniejsze mysql_fetch_array służy do wyświetlania rekordów po SELECT a nie ma nic wspólnego z ich dodawaniem INSERT


  1. <?php
  2. $i="INSERT INTO cms WHERE link='$link' ";
  3. echo $i; //zobaczysz jak wyglada zapytanie
  4. $wstaw=mysql_query($i);
  5.  
  6.  
  7. $s="select * from cms WHERE link='$link' ";
  8. echo $s; //zobaczysz jak wyglada zapytanie
  9. $dipo = mysql_query($s);
  10.  
  11. while($row = mysql_fetch_array($dipo))
  12. {
  13.  
  14. //kod petli
  15.  
  16. }
  17. ?>


Łukasz
kwiateusz
Proszę o zapoznanie się z tematem: Temat: Tematyka i zasady panujące na forum Przedszkole a następnie czekam na PW z poprawnym tagiem.

Do tego czasu temat pozostanie zamknięty.
Do tego jest BBCode to należy go używac...
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.