Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mysql_query chyba nie chce działać?
Forum PHP.pl > Forum > Bazy danych > MySQL
hermanluk
Zaczynam z php więc nie miejcie pretensji jeżeli zadaję głupie pytania winksmiley.jpg

No więc wg tego arta tworze baze danych, oraz kod który wygląda następująco:
Kod
<?php
$host = "localhost";
$login = "login";
$haslo = "haslo";
$baza = "baza";
$limit = 60;
$czas_aktualny = time();
$czas_zliczanych = $czas_aktualny - $limit;

mysql_connect($host, $login, $haslo);
mysql_select_db($baza);

$dodaj = mysql_query("INSERT INTO IleOnline VALUES ('$czas_aktualny','$REMOTE_ADDR','$PHP_SELF')");

$usun = mysql_query("DELETE FROM IleOnline WHERE czas<$czas_zliczanych");

$wynik_strona = mysql_query("SELECT DISTINCT ip FROM IleOnline WHERE plik='$PHP_SELF'") <#or die ("Wystąpił błąd w zapytaniu mysql_query");

$user = mysql_num_rows($wynik_strona);

If($user == 1) {
print("$user osoba jest online w serwisie - jesteś nią Ty!\n");
} else {
print("$user użytkowników jest online w serwisie\n");
}
mysql_close;
?>


Niestety kod się nie wykonuje. Doszłem do tego że funkcja mysql_query nie zostaje wykonana, lub wogóle nie działa. Przez co dostaje "Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in..."

Jak dopisze po każdym mysql_query "or die ("błąd")" to wypisuje błąd i przestaje się wykonywać pozostała część kodu.

Co tu może być źle? Kod wygląda na dobry, więc może chodzi o coś z konfiguracją MySQL'a??
rogrog
postawa w debugowaniu kodu z mysqlem:
  1. <?php
  2.  
  3.  
  4. ?>


wyświetli ci ostatni błąd z zapytania sqla i pomoże Ci znaleźć błąd smile.gif
hermanluk
No dzięki. Przydata rzecz.

No to wyświetla mi ze baza danych nie została wybrana :/

Wpisałem inną bazę - działa mad.gif

No więc przy instalacji MySQL'a były utworzone standardowo dwie bazy (test i mysql) i jak je ustawię to działa. A jak utworze nową baze danych to pisze że nie wybrano bazy danych :/

Działa, tzn. potrafi wybrać tą baze danych. Bo pojawia się inny błąd sad.gif ("Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource...")

Czekam na dalsze sugestie winksmiley.jpg
revyag
Być może user którym łączysz się do bazy danych, nie ma do niej praw dostępu, i dlatego nie może jej wybrać, co jest przyczyną dalszych kłpotów.
Vertical
  1. <?php
  2. $db = mysql_connect($host, $login, $haslo);
  3. mysql_select_db($baza, $db);
  4. ?>
hermanluk
Cytat
Być może user którym łączysz się do bazy danych, nie ma do niej praw dostępu, i dlatego nie może jej wybrać, co jest przyczyną dalszych kłpotów.

Przypuśćmy że tak jest. To w takim razie co należy wykonać aby user miał te prawa?

Cytat
Kod
<?php
$db = mysql_connect($host, $login, $haslo);
mysql_select_db($baza, $db);
?>

To nic tutaj nie wnosi.
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.