sql >> Databasteknik >  >> RDS >> Mysql

VÄLJ * FRÅN personer WHERE user_id='$user_id' ORDNING EFTER tid GRUPPER EFTER efternamn

Du har ett fel i din SQL, syntax, SQL-injektion sårbarhet och förmodligen använder du föråldrat databastillägg. Så här är hur det verkligen borde se ut:

$dsn = "mysql:dbname=$db_name;host=$db_host";
try{
    $pdo = new PDO($dsn, $username, $password);
}
catch(PDOException $e){
    die($e->getMessage());
}
$sql = "SELECT surname, count(id) FROM people WHERE user_token=:usr_token ORDER BY time GROUP BY surname";
$stmt = $pdo->prepare($sql);
if ($stmt->execute(array(':usr_token'=>$user_token))){
    $result = $stmt->fetchAll();
}
else{
    print_r($stmt->errorInfo());
    die("Error executing query");
}

Se PDO-manualen för detaljer



  1. Vilken typ av hash använder mysql?

  2. Hur ändrar jag MySQL root-kontolösenordet på CentOS7?

  3. Portera en Ruby/Rails/MRI-app till JRuby

  4. Påverkar ordningsföljden av tabeller i raka kopplingar, utan antydningsdirektiv, prestanda?