Ik probeer mijn oude scripts om te zetten naar PDO.
Hiervoor wel wat oefenen en direct gaat het fout.
Kan iemend mij vertellen wat ik in onderstaande code fout doe:

function getAllData($db) {
   $stmt = $db->query("	
    SELECT person.*, horse.*, 2010Combination.* 
	FROM FEIPerson AS person
	INNER JOIN 2010Combination ON person.fei_id = 2010Combination.personFEIid 
	INNER JOIN FEIHorse horse ON horse.fei_id = 2010Combination.horseFEIid 
	ORDER BY person.competing_for_country, horse.complete_name ASC
    ");
    
   return $stmt->fetchAll(PDO::FETCH_ASSOC);
}

$db = new PDO('mysql:host=localhost;dbname='.$MySqlDatabase.';charset=utf8', $MySqlUsername, $MySqlPassword);

try {
   getAllData($db);
    } catch(PDOException $ex) {
        echo "An Error occurred!"; //user friendly message
    }
    
$row_count = $stmt->rowCount();
echo $row_count.' rows selected';
?>

Ik krijg deze foutmeldingen:
Notice: Undefined variable: stmt in /home/harry-arends.nl/public_html/event/SetCompNum.php on line 25

Fatal error: Call to a member function rowCount() on a non-object in /home/harry-arends.nl/public_html/event/SetCompNum.php on line 25
Als je is_nc een character column is dan zou UPPER(is_nc) = "YES" voor Yes, YES, yes, yEs enz werken.
Als het een binary is, dan moet je wat extras doen.

Wil je echt op Yes of yes testen dan kan je dit gebruiken: is_nc in ("Yes", "yes")
vraag is, hoe je dan ooit die varianten in hooDFletTers voor elkaar hebt gekregen.

Wel een argument om dus voortaan gewoon een 0 of 1 te gebruiken voor dit soort situaties (of een boolean.)
Maar dat is NIET het probleem waar ik het over heb.
Verder bedankt voor de input

Reageren