gebruiker78
Gebruiker
- Lid geworden
- 29 jun 2010
- Berichten
- 428
@mod sorry kan deze vraag naar sql/mysql subforum
hallo,
laatst kwam ik met een vraag en mensen zeiden dat het sneller kon en dat ik nieuwere sql queries moest gebruiken.
1. wat zijn nieuwere sql queries? (bedoel waar kan ik zien of ik een oude gebruik of een nieuwe)
2. heb ik zo een snellere querie (ik begrijp dat het schrijven mooier kan maar het is nu meer de vraag of het sneller is)
oud:
nieuw:
UPDATE
oke ik ben constant mijn code aan het aanpassen en toevallig door het testen kwam ik erachter dat
$profilepic = $row1['profilepic'];
$profilen = $row1['profilen'];
niet verplicht zijn (als je geen profile foto hebt sta je dus ook niet in de database) dus geeft hij 0 resultaten en pakt hij niks meer.
hoe kan ik dit oplossen? dat ook al vind hij niks bij pp.profilepic pp.profilen dat hij dan wel alle andere resultaten geeft.
hallo,
laatst kwam ik met een vraag en mensen zeiden dat het sneller kon en dat ik nieuwere sql queries moest gebruiken.
1. wat zijn nieuwere sql queries? (bedoel waar kan ik zien of ik een oude gebruik of een nieuwe)
2. heb ik zo een snellere querie (ik begrijp dat het schrijven mooier kan maar het is nu meer de vraag of het sneller is)
oud:
PHP:
$query = mysql_query("SELECT dbunique,usersid,ido,message,time FROM usersppm WHERE usersid='" . mysql_real_escape_string( $id ) . "' ORDER BY time DESC LIMIT 0,10");
while($row1 = mysql_fetch_array($query)){
$data[] = $row1;
foreach ($data as $row1);
$dbunique = $row1['dbunique'];
$usersid = $row1['usersid'];
$ido = $row1['ido'];
$message = $row1['message'];
$time = $row1['time'];
$query2 = mysql_query("SELECT firstname,lastname,easyname FROM users WHERE id='" . mysql_real_escape_string( $ido ) . "' LIMIT 1");
while($row2 = mysql_fetch_array($query2)){
$data[] = $row2;
foreach ($data as $row2);
$firstnameo = $row2['firstname'];
$lastnameo = $row2['lastname'];
$easyname = $row2['easyname'];
$query3 = mysql_query("SELECT easyname,profilepic,profilen FROM userspp WHERE id='" . mysql_real_escape_string( $ido ) . "' LIMIT 1");
PHP:
$query = mysql_query("SELECT p.dbunique,p.usersid,p.ido,p.message,p.time,u.firstname,u.lastname,u.easyname,u.id,pp.profilepic,pp.profilen,pp.id FROM usersppm as p,users as u,userspp as pp WHERE p.usersid='" . mysql_real_escape_string( $id ) . "' and u.id=p.ido and pp.id=p.ido ORDER BY time DESC LIMIT 0,10");
while($row1 = mysql_fetch_array($query)){
$data[] = $row1;
foreach ($data as $row1);
$dbunique = $row1['dbunique'];
$usersid = $row1['usersid'];
$ido = $row1['ido'];
$message = $row1['message'];
$time = $row1['time'];
$firstnameo = $row1['firstname'];
$lastnameo = $row1['lastname'];
$easyname = $row1['easyname'];
$profilepic = $row1['profilepic'];
$profilen = $row1['profilen'];
UPDATE
oke ik ben constant mijn code aan het aanpassen en toevallig door het testen kwam ik erachter dat
$profilepic = $row1['profilepic'];
$profilen = $row1['profilen'];
niet verplicht zijn (als je geen profile foto hebt sta je dus ook niet in de database) dus geeft hij 0 resultaten en pakt hij niks meer.
hoe kan ik dit oplossen? dat ook al vind hij niks bij pp.profilepic pp.profilen dat hij dan wel alle andere resultaten geeft.
Laatst bewerkt: