17. februar 2005 - 14:59
Der er
13 kommentarer og 1 løsning
explode problem
$foresp = mysql_query("SELECT * FROM medlemsliste WHERE medlem_som LIKE 'Leder'"); while ($data = mysql_fetch_array($foresp)) { $klasser = explode(",", $data["leder_for"]); if (in_array("test",$klasser)) { echo "<tr>"; echo "<td width=125 border=1>$data[navn]</td>"; echo "<td width=150 border=1>$data[addresse]</td>"; echo "<td width=115 border=1>$data[postnr]</td>"; echo "<td width=75 border=1>$data[tlfnr]</td>"; echo "<td width=100 border=1>$data[email]</td>"; echo "</tr>"; } else { echo " ingen<br> "; } } Er der nogle der kan sige mig hvorfor ovenstående kode ikke virker? Jeg har noget kode der ligner meget, og som virker. Det eneste jeg får ud, er "ingen"...
Annonceindlæg fra Kommando
17. februar 2005 - 16:47
#1
Fordi "test" ikke er i $klasser array'et ;)
18. februar 2005 - 12:26
#2
Det er den.
18. februar 2005 - 13:02
#3
Jeg kan også spørge på en anden måde. Jeg har en tabel hvor der står flere ord, som er komma sepereret. Nu vil jeg gerne have fundet alle dem hvor et af ordene er test. Hvordan gør jeg det???
18. februar 2005 - 16:34
#4
Hvi test var i $klasser ville den jo komme ind i din if() :) Prøv lige efter: $klasser = explode(",", $data["leder_for"]); at skrive: echo "<pre>"; var_dump( $klasser ); echo "</pre>"; For at se hvad der er i... Mht at finde test i et kommasepareret felt: SELECT * FROM medlemsliste WHERE medlem_som LIKE 'Leder' AND INSTR( ',test,', CONCAT( ',', leder_for, ',' ) > 0
23. februar 2005 - 17:15
#5
Der kommer følgende array(3) { [0]=> string(10) "2. Tumling" [1]=> string(7) "1. Pilt" [2]=> string(7) "2. Pilt" } Ved godt at der ikke er en der hedder test, men jeg har skiftet ordet med 1. Pilt
23. februar 2005 - 17:21
#6
Der kommer en fejl når jeg bruger SELECT * FROM medlemsliste WHERE medlem_som LIKE 'Leder' AND INSTR( ',test,', CONCAT( ',', leder_for, ',' ) > 0
01. marts 2005 - 08:05
#7
ingen der har en ide???
01. marts 2005 - 17:15
#8
Hvis du vil finde "1. Pilt" i en kommasepareret liste: SELECT * FROM medlemsliste WHERE medlem_som LIKE 'Leder' AND INSTR( ',1. Pilt,', CONCAT( ',', leder_for, ',' ) ) > 0
02. marts 2005 - 08:24
#9
Når jeg bruger den sql sætning, kommer der inger resultater, og der skulle minst komme 2.
02. marts 2005 - 11:54
#10
Så må der være formatteringsfejl i dit leder_for felt, har du måske mellemrum efter , ? For så skal du bruge: SELECT * FROM medlemsliste WHERE medlem_som LIKE 'Leder' AND INSTR( ', 1. Pilt,', CONCAT( ', ', leder_for, ',' ) ) > 0
02. marts 2005 - 13:35
#11
det står som følgende 2. Tumling,1. Pilt,2. Pilt
02. marts 2005 - 13:41
#12
Lyder underligt, for så burde min kommentar fra 1/03-2005 17:15:28 virke...
02. marts 2005 - 13:51
#13
hvad gør "> 0" som står i enden?
08. marts 2005 - 09:07
#14
Fandt en anden løsning Select * From MyTabel Where MyField LIKE '%1. Pilt%'
Vi tilbyder markedets bedste kurser inden for webudvikling