sql >> Database >  >> RDS >> Mysql

MySQL-query met behulp van een array

De tweede zoekopdracht moet $thelist . gebruiken niet $row , en het zou buiten de while . moeten zijn lus. De foreach lus is niet nodig bij het verwerken van een enkele rij. Je hebt toegang tot de naam in $row met een simpele $row[0] . Zoiets als dit (niet getest):

$query1 = "SELECT name FROM clients WHERE sector = '$sectorlink'";
$clientresult = mysql_query($query1, $connection) or trigger_error("SQL", E_USER_ERROR);

while($row = mysql_fetch_array($clientresult)){
    $temp[] = '"'.$row[0].'"';
}

$thelist = implode(",",$temp);
$query = "SELECT count(*) FROM studies WHERE client IN ($thelist) ORDER BY (date) desc";
$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR);

Let op: Houd er rekening mee dat uw code zeer kwetsbaar is voor SQL-injectie-aanvallen . Het is prima voor testen of interne ontwikkeling, maar als deze code de Fort Knox-website gaat draaien, wil je hem behoorlijk opknappen. Gewoon een FYI. :-)



  1. Microsoft SQL repliceren naar andere databases

  2. Ondersteunde formaatmodellen voor de ROUND() en TRUNC() datumfuncties in Oracle

  3. Hoe de GEBRUIKERSNAAM en het WACHTWOORD van MySQL te wijzigen?

  4. Mysql Alleen selecteren uit een kolom als de kolom bestaat