Den andra frågan ska använda $thelist
inte $row
, och det bör vara utanför while
slinga. foreach
loop är onödigt när du bearbetar en enstaka rad. Du kan komma åt namnet i $row
med en enkel $row[0]
. Något så här (otestat):
$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);
Varning: Var medveten om att din kod är mycket sårbar för SQL-injektionsattacker . Det är bra för testning eller intern utveckling, men om den här koden ska köra Fort Knox-webbplatsen kommer du att vilja fixa det en hel del. Bara en FYI. :-)