Notice: Trying to get property '

Status
Niet open voor verdere reacties.

Frenske123

Terugkerende gebruiker
Lid geworden
2 jul 2007
Berichten
1.260
Hallo


Ik krijg nu steeds een melding:

Notice: Trying to get property 'image' of non-object i.................. op
regel 142


regel 142:
PHP:
$result_flyer = $mysqli->query("SELECT image FROM `kalender`  WHERE datum = CURDATE() and image != '' ")->fetch_object()->image



Iemand een idee waarin ik de fout moet zoeken

Ik moet pad / naam van een afbeelding ophalen uit tabel en die is aanwezig in de huidige datum
 
Je doet aan daisy chaining van functies, maar in dit geval levert dit:
PHP:
$mysqli->query("SELECT image FROM `kalender`  WHERE datum = CURDATE() and image != '' ")->fetch_object()
geen object op, waardoor de property image niet opgevraagd kan worden.

Aangezien je enkel de kolom "image" in de SELECT opgenomen hebt, vermoed ik dat je het resultaat al krijgt door enkel de query uit te voeren.

Waarschijnlijk kun je eenvoudig zien hoe je hem aan moet roepen door dit te doen:
PHP:
$result_flyer = $mysqli->query("SELECT image FROM `kalender`  WHERE datum = CURDATE() and image != '' ")->fetch_object();
var_dump($result_flyer); exit;
 
Kan je hiermee verder?
Met "if" wordt er gekeken of de query goed is verlopen. Met "while" doorloop je de records.
PHP:
$sql_flyer = "SELECT image FROM `kalender`  WHERE datum = CURDATE() AND image != ``";
if ($result_flyer = $mysqli->query($sql_flyer)) {
  // doorloop 0, 1 of meer records
  while ($obj = $result_flyer->fetch_object()) {
    // elk gevonden image
    echo $obj->image;
  }
}
 
Bedankt voor julle reacties


Bij Tha devil krijg ik een NULL


Bij Bron wordt er niks geprint.


Dit staat in de tabel met huidige datum en zou dus geprint moeten worden "
upload/files/flyers/Themas/2020/heropening-corona-2juli2021.jpg
 
Als je de query in phpMyAdmin (van je provider) ingeeft, krijg je dan wel een resultaat?
 
sql fout 1.JPG

Krijg ik volgende melding

Vreemd het heeft altijd gewerkt .
 
De sql syntax klopt inderdaad niet. Probeer deze eens
PHP:
$sql_flyer = "SELECT image
              FROM `kalender`
              WHERE datum = CURDATE()
              AND image <> ''";
if ($result_flyer = $mysqli->query($sql_flyer)) {
  // doorloop 0, 1 of meer records
  while ($obj = $result_flyer->fetch_object()) {
    // elk gevonden image
    echo $obj->image;
  }
}
 
Beste Bron

Bedankt voor je bericht

Ik had die code toenmaals van jou en heeft altijd gewerkt, door slechte ogen is een en ander nu mis gegaan waarschijnlijk-


Waarschijnlijk roep ik een verkeerde tabel of DB aan
heb ff los bestand gemaakt en dat werkt , krij gin elk geval naam van de afbeelding-


PHP:
$servername = "localhost";
$username = "deb";
$password = "";
$dbname = "deb";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql_flyer = "SELECT image
              FROM `kalender_p2g`
              WHERE datum = CURDATE()
              AND image <> ''";
if ($sql_flyer = $conn->query($sql_flyer)) {
  // doorloop 0, 1 of meer records
  while ($obj = $sql_flyer->fetch_object()) {
    // elk gevonden image
    echo $obj->image;
  }
}

$conn->close();

Voorbeeld code zal waarschijnlijk wat anders moeten. while lus eruit

Zet ik deze code in pagina waar ik hem in wil hebben krijg ik weer melding ,,,<b>Notice</b>: Trying to get property 'image' of non-object in
dus zal moeten uitzoeken wat er mis gaat.

Hier moet de naam afb. in geprint worden
HTML:
 <div class="flyer diefje">
    <div> <img  class="flyer1" src="https://www.site.nl<?php echo $image;
?>" alt="FLYER"> </div>
 
Laatst bewerkt:
Wil je het eens vervangen door dit
PHP:
<?php
$servername = "localhost";
$username = "deb";
$password = "......";
$dbname = "deb";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
?>

<div class="flyer diefje">
<div>

<?php
$sql_flyer = "SELECT image FROM `kalender_p2g`
              WHERE datum = CURDATE() AND image <> ''";
if ($sql_flyer = $conn->query($sql_flyer)) {
    // doorloop 0, 1 of meer records
    while ($obj = $sql_flyer->fetch_object()) {
        // elk gevonden image
        $image = $obj->image;
        echo '<img class="flyer1" src="https://www.site.nl/' .  $image . '" alt="FLYER">';
    }
}
$conn->close();
?>

</div>
</div> <!-- end flyer diefje -->
 
Graag gedaan. Suc6 met de website.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan