Problem mit MySQL JOIN

Hi,

1. Wo schaltest Du da display_errors an und drehst error_reporting auf? Sehe ich nicht...
2. Bei der While-Schleife fehlt die schließende Klammer.
3. Es muss $row->senderID etc. heißen. Bei aufgedrehtem error_reporting hättest Du genügend Notices bekommen müssen. Wenn dann gar nichts ausgegeben wird, machst Du halt mal ein var_dump($row), um zu sehen, was denn da überhaupt drin steht. => Lerne zu debuggen.

LG
 
Für display_errors hab ich einen Hacken in den Optionen meines lokalen servers (WAMP) gesetzt. folgendes wird ausgegeben:

Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 180

Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 181

Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 182
bool(false) 1

Code:
PHP:
<?php include("functions/pn_call.php"); 
        
        error_reporting(E_ALL);        

        $row = mysql_fetch_object($action_call_pns);
        
        $value['sender'] = $row->t1_senderID;
        $value['causes'] = $row->t1_causes;
        $value['text'] = $row->t1_text;  
        
        var_dump($row);
        
        echo $value['sender'];
        echo " "; 
        echo $value['causes'];
        echo " "; 
        echo $value['text']; 
        echo " "; 
        echo $userID;  
?>

Die echos der $value Variablen werden also ignoriert oder die Variablen sind einfach nicht gefüllt.
Die Zeilen 180-182 sind folgende:
PHP:
 $value['sender'] = $row->t1_senderID;
        $value['causes'] = $row->t1_causes;
        $value['text'] = $row->t1_text;

Die 1 die ausgegeben wird ist die userID (also ist diese Variable gefüllt).

so far,
Christian
 
Hi,

Für display_errors hab ich einen Hacken in den Optionen meines lokalen servers (WAMP) gesetzt. folgendes wird ausgegeben:

Code:
Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 180

Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 181

Notice: Trying to get property of non-object in C:\wamp\www\mycom\post.php on line 182
bool(false) 1

Warum sagst Du sowas denn nicht gleich und behauptest stattdessen, Du bekämst nichts ausgegeben? :confused:
Die Meldungen sind doch eindeutig. $row ist also kein Objekt sondern false (Ausgabe bool(false)). Die Abfrage konnte also offensichtlich ausgeführt werden, hat aber ein leeres Ergebnis geliefert. Warum das so ist, kann man ohne Daten nicht sagen. Lass Dir mal die Abfrage per echo ausgeben und teste sie in einem MySQL-Client Deiner Wahl.

Die echos der $value Variablen werden also ignoriert oder die Variablen sind einfach nicht gefüllt.

Letzteres, was logisch ist, wenn $row nunmal false ist... Anweisungen werden nicht einfach ignoriert, welchen Sinn sollte das haben?

LG
 
Och möönsch, das ist doch nicht die Abfrage, sondern die Ergebnisresource, die [phpf]mysql_query[/phpf] zurückliefert. Du musst auch mal im Manual lesen, was für Rückgabewerte die Funktionen, die Du da verwendest, überhaupt haben.

Lass Dir das zusammengesetzte Statement ausgeben.

LG
 
So, entschuldigt bitte die späte Antwort aber ich war übers Wochenende auf nem Kurztrip nach Berlin und hatte nichts dabei -.-

Also, hab mir das Staement jetzt ausgeben lassen. Folgendes

SELECT t1.senderID AS t1_senderID, t1.alreadyread, t1.date, t1.time, t1.causes AS t1_causes, t1.text as t1_causes, t2.userID, t2.username, t2.prenom, t2.nom FROM tbl_pns AS t1 INNER JOIN tbl_usr_ext AS t2 ON t1.senderID = t2.userID WHERE t1.receiverID = '1'

wird mir ausgegeben.

so far,
Christian
 
Hi,

So, entschuldigt bitte die späte Antwort aber ich war übers Wochenende auf nem Kurztrip nach Berlin und hatte nichts dabei -.-

Das macht ja nichts. Allerdings solltest Du gegebene Antworten auch richtig lesen:
Die Abfrage konnte also offensichtlich ausgeführt werden, hat aber ein leeres Ergebnis geliefert. Warum das so ist, kann man ohne Daten nicht sagen. Lass Dir mal die Abfrage per echo ausgeben und teste sie in einem MySQL-Client Deiner Wahl.

Stell erstmal sicher, dass in den Tabellen auch die erwarteten Daten drinstehen.
Auch das nochmal: An der Abfrage ansich ist nichts Auffälliges zu erkennen.

LG
 
Hi,
also, ich hab mir jetzt mal DreamCoder geladen. Ich muss dazu sagen ich habe vorher noch nie mit einem SQL Editor gearbeitet (hat bisher immer gut ohne geklappt)

Das Bild unten ist das Ergebnis. Ich hoffe das hilft euch weiter.
 

Anhänge

  • sqledit.jpg
    sqledit.jpg
    62,5 KB · Aufrufe: 16
Hi,

Ich weiß ja nicht ob der Beitrag übersehen wurde. aber ich würd mich freuen, wenn ihr mir da doch noch weiter helfen könntet.

das passiert wohl eher selten, da hier genug Leute lesen und man auf einen Blick sehen kann, in welchen abonnierten Themen neue Beiträge vorhanden sind.
-> Threadpushing ist hier nicht erwünscht!
Meistens liegt es eher an der Formulierung der Frage, fehlenden Informationen etc.

Ich sage Dir gerne zum dritten Mal, dass an der Abfrage nichts zu erkennen ist. Wenn sie keinen Fehler sondern ein leeres Ergebnis liefert, liegt es an den Daten, die niemand ausser Dir kennt. Wenn Du nicht mehr Informationen lieferst, wird Dir niemand helfen können.

LG
 
Zurück