Web-Tor Medlem sedan nov. 2000 13 890 inlägg Trådstart 8 nov. 2000 12:58 #1 I en array förekommer samma värde flera gånger. Jag vill ta bort alla ”överflödiga” värden så att ett värde bara visas en gång.
Koden är:
$result = mysql_query ("SELECT colSub FROM $Project") or die ("Error");
while($i < mysql_num_rows($result)) {
$sub = mysql_result($result2,$i,colSub);
echo "$sub";
$i++;
}
I nuläget kan $sub ge samma värde flera gånger eftersom det finns på flera ställen i kolumnen.
Prövade med array_unique med det blev ju fel...
/Tor
S Swey Medlem sedan apr. 2000 3 971 inlägg Prova att byta ut SQL-frågan till:
SELECT DISTINCT colSub FROM $Project
Web-Tor Medlem sedan nov. 2000 13 890 inlägg Nu har jag kommit till ett läge då jag måste få ut "distikta" värden ur en array. Det är inte någon SQL-fråga inblandad (Se tidigare inlägg i denna tråd)
/Tor
W woodi Medlem sedan feb. 2000 1 270 inlägg Detta bör lösa Dina bekymmer..
for($x=0; $x<count($Array); $x++){
$tmp=$Array[$x];
if(!$used[$tmp])
echo "$Array[$x]<br>";
$used[$tmp]=1;
}
Web-Tor Medlem sedan nov. 2000 13 890 inlägg Tack för den Woodi!
Ett problem mindre...
En liten fråga bara. Jag är hyfsat ny på PHP bör tilläggas.
Varför har inte if-satsen några {}-parenteser?
/T
W woodi Medlem sedan feb. 2000 1 270 inlägg { } klammrar behöver Du endast om if-satsen innefattar fler än 1 rad, därav tog jag inte med den..
IF-satsen i mitt fall innefattar endast raden (echo "$Array[$x]<br>";).
($used[$tmp]=1;) gör koden varje gång även fast IF-satsen inte är uppfylld..
Dock är väl det bästa egentligen att alltid ha dem med så att man inte glömmer dem om man utökar koden!
Web-Tor Medlem sedan nov. 2000 13 890 inlägg Kom just på att det var därför klammrarna saknades.
Det blev nämligen väldigt fel när jag ville skriva ut en rad till i den if-satsen.
Hade jag tänkt efter lite innan jag frågat dig så hade jag nog dessutom kommit på det eftersom det likadant i princip alla programspråk jag kan.
Men men...som Swey brukar uttrycka det: -
Skriv först, tänk sen!
/Tor
W woodi Medlem sedan feb. 2000 1 270 inlägg Det är inte alltid så lätt att tänka först!