Inline functie omzetten naar mijn Model functie
Donald Boers
08/06/2018 21:39:44De volgende functie maakt deel uit van een systeempje dat ik wel aardig vind:
Als ik deze echter in mijn normale structuur gebruik krijg ik allemaal fout meldingen, zoals:
Trying to get property of non-object
De functie wordt gebruikt voor een vergelijking die belangrijk is voor het functioneren van het systeem. Hoe dien ik mijn eigen functie aan te passen:
Het gaat hierbij om het feit of de de query een resultaat oplevert, Is dit het geval dan vinden er een aantal updates plaats in de database. Zo niet dan moet er de waarde op nul gezet worden. Ik heb het er uit gelaten maar dan werkte het niet.
Alvast bedankt
Edit
Ik heb het reeds opgelost:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
function check_changes(){
$result = $this->db->query('SELECT counting FROM news WHERE id=1');
if($result = $result->fetch_object()){
return $result->counting;
}
return 0;
}
$result = $this->db->query('SELECT counting FROM news WHERE id=1');
if($result = $result->fetch_object()){
return $result->counting;
}
return 0;
}
Als ik deze echter in mijn normale structuur gebruik krijg ik allemaal fout meldingen, zoals:
Trying to get property of non-object
De functie wordt gebruikt voor een vergelijking die belangrijk is voor het functioneren van het systeem. Hoe dien ik mijn eigen functie aan te passen:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
function check_changes($post_id){
$sql = "SELECT `counter`
FROM `comments_counter`
WHERE `post_id` = ?";
$stmt = $this->pdo->prepare($sql);
$stmt->execute(array($post_id));
return $stmt->fetch();
}
$sql = "SELECT `counter`
FROM `comments_counter`
WHERE `post_id` = ?";
$stmt = $this->pdo->prepare($sql);
$stmt->execute(array($post_id));
return $stmt->fetch();
}
Het gaat hierbij om het feit of de de query een resultaat oplevert, Is dit het geval dan vinden er een aantal updates plaats in de database. Zo niet dan moet er de waarde op nul gezet worden. Ik heb het er uit gelaten maar dan werkte het niet.
Alvast bedankt
Edit
Ik heb het reeds opgelost:
Gewijzigd op 08/06/2018 21:53:22 door Donald Boers
PHP hulp
18/12/2024 05:22:15Thomas van den Heuvel
08/06/2018 21:59:46Als dat onderdeel is van een batch van queries doe je er wellicht verstanding aan om e.e.a. in een transactie te zetten en de tabellen/kolommen hierin te locken door FOR UPDATE toe te voegen in de selecties.