sql >> Database teknologi >  >> RDS >> Mysql

PHP-fejl:Kald til en medlemsfunktion rowCount() på et ikke-objekt

Vi har mere end sandsynligt at gøre med strenge her, så variablerne i dine værdier skal citeres.

WHERE ens_cin='$login' AND ens_pass='$password'";

Plus, blot at bruge PDO alene, betyder det ikke, at du er sikker mod SQL-injektion.

En indsigt:

Sørg for, at du rent faktisk opretter forbindelse via PDO og ikke mysqli_ . Jeg ser ofte den slags spørgsmål.

Hvis det er tilfældet, blandes de forskellige MySQL API'er ikke med hinanden.

Nu dette:

$password=$_GET["password"];

Det er heller ikke sikkert at sende en adgangskode gennem en GET; du ved ikke, hvem der kan "lytte med". Du skal bruge POST. Jeg håber også, at du bruger en hash og ikke almindelig tekst til lagring af adgangskode.

Sidenote:Sørg for, at du faktisk bruger GET og ikke blandes sammen med POST, hvis dette kommer fra en HTML-formular.

Du søger sandsynligvis ikke for fejl.

Tilføj $idconnex->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); lige efter at forbindelsen er åbnet.

Tilføj fejlrapportering til toppen af ​​din(e) fil(er), som vil hjælpe med at finde fejl.

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

Sidenote: Fejlrapportering bør kun udføres i staging, og aldrig produktion.



  1. Flyt MySQL-databasen til en ny server

  2. SQL kommasepareret række med Group By-sætning

  3. JDBC ResultSet får kolonner med tabelalias

  4. Sådan opretter du en simpel valgforespørgsel i designvisning i Access 2016