sql >> Databasteknik >  >> RDS >> Mysql

PHP-fel:Anrop till en medlemsfunktion rowCount() på ett icke-objekt

Vi har mer än troligt att göra med strängar här, så variablerna i dina värden måste citeras.

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

Plus att bara använda PDO på egen hand betyder inte att du är säker mot SQL-injektion.

En insikt:

Se till att du verkligen ansluter via PDO och inte mysqli_ . Jag ser ofta den här typen av frågor.

Om så är fallet blandas inte de olika MySQL API:erna med varandra.

Nu detta:

$password=$_GET["password"];

Att skicka ett lösenord genom en GET är inte heller säkert; du vet inte vem som kan "lyssna in". Du bör använda POST. Jag hoppas också att du använder en hash och inte vanlig text för lösenordslagring.

Sidenote:Se till att du verkligen använder GET och inte blandas ihop med POST, om detta kommer från ett HTML-formulär.

Du letar förmodligen inte efter fel.

Lägg till $idconnex->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); direkt efter att anslutningen har öppnats.

Lägg till felrapportering till toppen av din(a) fil(er) som hjälper dig att hitta fel.

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

// rest of your code

Sidenot: Felrapportering bör endast göras i staging, och aldrig produktion.



  1. F# error 'error FS0039:Namnutrymmet eller modulen 'MySql' är inte definierat'?

  2. Introduktion till temporära tabeller i SQL Server

  3. Konvertera en AM/PM-tid till 24 timmars format med PHP eller MySQL?

  4. Hur optimerar man SQL-frågan med att beräkna avstånd efter longitud och latitud?