Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
PHP/MySql - Fehler
#1
Liebe Community,

Leider möchte ich etwas programmieren - blöderweise tritt dort ein fehler auf und ich weiß nicht warum.

Vielleicht liegt es daran, dass ic so wenig geschlafen habe...

Möglicherweise könnt ihr mir ja helfen.

Ich bekomme folgenden Fehler:

"Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /users/ninpatest/www/box/demnaechst.php on line 56"

Im Code steht folgendes:

PHP-Code:
<?php
$timestamp 
time();

$abfrage mysql_query("SELECT * FROM pc_games WHERE release >= '$timestamp' ORDER BY release DESC LIMIT 0,6");

while (
$next mysql_fetch_array($abfrage)) {
$monate = array(
   
1=>"Januar",
   
2=>"Februar",
   
3=>"März",
   
4=>"April",
   
5=>"Mai",
   
6=>"Juni",
   
7=>"Juli",
   
8=>"August",
   
9=>"September",
   
10=>"Oktober",
   
11=>"November",
   
12=>"Dezember");
$monat date("n");

    echo 
mysql_error('<div class="demnaechst_games">'.$next["titel"].'</div><div class="demnaechst_release">'.$monate[$monat].'</div>');
}
?>

Könnt ihr mir sagen, woran das liegt?

Walu
Zitieren
#2
Ist das der gesamt Code? Hast du irgendwo eine Verbindung zur Datenbank hergestellt?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#3
Natürlich habe ich auch eine Verbindung zur Datenbank Smile
Zitieren
#4
Moin,
(14.03.2010, 17:10)Waluigi schrieb: Leider möchte ich etwas programmieren
Och so schlimm ists doch nicht Big Grin
(14.03.2010, 17:10)Waluigi schrieb: Im Code steht folgendes:
[...]
Könnt ihr mir sagen, woran das liegt?

Walu

Ich hab das Gefühl, dass der Fehler in dieser Zeile liegt:
PHP-Code:
echo mysql_error('<div class="demnaechst_games">'.$next["titel"].'</div><div class="demnaechst_release">'.$monate[$monat].'</div>'); 

Ersetz dass doch einfach mal durch:
PHP-Code:
echo '<div class="demnaechst_games">'.$next["titel"].'</div><div class="demnaechst_release">'.$monate[$monat].'</div>'

mysql_error will als Variable näm. die Verbindungskennung und keinen String und möglicherweise bringt dass ja dann die ganze While-Schleife raus.


Ach ja, dann nochwas:
PHP-Code:
$monat date("n"); 
solltest du vllt auch durch
PHP-Code:
$monat date("n",$next['release']); 
ersetzen, weil du sonst statt dem Releasemonat ständig den aktuellen ausgegeben bekommst Wink

Gruß,
Severin
Zitieren
#5
Da scheint etwas mit meinem sql Befehl nicht zu stimmen - sehe ich zum ersten Mal.

Habe es wie folgt geändert (habe einfach mal ein paar Sachen rausgelassen):

PHP-Code:
$verbindung mysql_connect("xxxxxxx","xxxxxxxxx","xxxxxxxx")
or die (
"Keine Verbindung möglich. Benutzername oder Passwort sind falsch");

mysql_select_db("xxxxx")
or die (
"Die Datenbank existiert nicht.");
mysql_query("SET NAMES 'utf8'"); 

$abfrage mysql_query("SELECT * FROM pc_games ORDER BY release DESC LIMIT 0,6");

while (
$next mysql_fetch_array($abfrage)) {
    echo 
'<div class="demnaechst_games">'.$next["titel"].'</div><div class="demnaechst_release">'.$monate[$monat].'</div>'


Könnt ihr mir sagen was da nicht stimmt? Der sagt ja irgendwas von Argument 1, aber ich versteh das nicht so ganz.

Und danke schonmal für den Tipp, sevildevil, wegen dem release Wink

Danke im voraus.
Zitieren
#6
Welcher Fehler kommt jetzt?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#7
Immernoch derselbe:

"Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /users/ninpatest/www/box/demnaechst.php on line 56"

Zeile 56 wäre in diesem Fall:

PHP-Code:
while ($next mysql_fetch_array($abfrage)) { 

Ich weiß gerade nicht weiter.
Zitieren
#8
mysql_query liefert nur False, wenn das Query falsch ist. Kannst du mal schauen, ob da ein MySQL-Fehler kommt?
Siehe: http://de.php.net/manual/de/function.mysql-query.php
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#9
PHP-Code:
if ($abfrage == 'true') {
    echo 
'Abfrage erfolgreich durchgeführt!';
}
else {
    echo 
'Kaputt!';


UND

PHP-Code:
if ($abfrage == 'false') {
    echo 
'Abfrage erfolgreich durchgeführt!';
}
else {
    echo 
'Kaputt!';


Beides gibt "Kaputt!" aus.
Zitieren
#10
$abfrage ist entweder ein Resource-Objekt, oder false. Entsprechend kann es niemals mit einem String übereinstimmen. Versuche
PHP-Code:
if ($abfrage !== false) {
    echo 
'Abfrage erfolgreich durchgeführt!';
}
else {
    echo 
'Kaputt!';

oder kurz
PHP-Code:
if ($abfrage) {
    echo 
'Abfrage erfolgreich durchgeführt!';
}
else {
    echo 
'Kaputt!';

Was ist der Unterschied zwischen der Politik und der Informatik?
In der Informatik ignoriert man führende Nullen...
Zitieren