Mysqli "Trying to get property of non-object"

  • Guten Morgähn,


    ich habe derzeit ein Problem was ich bis jetzt noch nie hatte und keine lösung finde.


    Ich frage mit Mysqli ab, ob ein Wert in der Datenbank existiert. Das Query Stimmt soweit, das habe ich schon geprüft.
    Allerdings erhalte ich beim Ausführen immer wieder die Meldung "Trying to get property of non-object on line 50";


    Leider weiß ich solangsam keine möglichkeit mehr woher diese Meldung kommt.


    Mein letztes Ergebniss sah so aus:

    PHP
    $exec->execute();
    				if(($row_prep = $exec->store_result()) !== FALSE)
    				{
    					if($row_prep->num_rows == 1) // Errorzeile
    					{


    als Test habe ich auch das versucht, da war die Fehlermeldung dann "PHP message: PHP Parse error: syntax error, unexpected 'if' "


    PHP
    $exec->execute();
    				if(is_object($exec->store_result()))
    				{
    					$row_prep = $exec->store_result();
    						if($row_prep->num_rows == 1)  // Errorzeile
    						{


    hat jemand eine Idee was den Fehler verursachen könnte?


    MfG, Akuba

    Ich helfe gerne, aber nur wenn die andere Person wenigstens versucht es zu schaffen.
    Solange sie nicht so dreist sind und mich beim Zocken zuspammen.

  • PHP
    $exec->store_result()

    Gibt nur true oder false zurück, je nachdem ob erfolgreich oder nicht. Durch

    PHP
    $row_prep->num_rows

    Versuchst du also ein Boolean wert als Objekt zu benutzen, deshalb der Error "Trying to get property of non-object".


    PHP
    $exec->execute();
    if($exec->store_result() !== FALSE)
    {
        if($exec->num_rows == 1)
        {

    Sollte funktionieren.


    DJ Deagle: != und == überprüft ob der wert der beiden variablen gleich ist. !== und === überprüft ob sowohl der wert, als auch der Typ der variablen gleich ist.

    PHP
    1 == "1" // true, weil beides der gleiche wert (1) ist
    1 === "1" //false, weil das eine ein integer und das andere ein string ist

    The fact is, I am right. And if you think I'm wrong, you are wrong.

  • Funktioniert, Danke.


    Nurnoch eine Kurze Frage: kann man auf ein Prepared Statement ->fetch_array(); anwenden? mit get_result(); klappt das nicht, bekomme allerdings auch keine Fehlermeldung

    Ich helfe gerne, aber nur wenn die andere Person wenigstens versucht es zu schaffen.
    Solange sie nicht so dreist sind und mich beim Zocken zuspammen.