PDA

Volledige versie bekijken : zoek en vindt in een array [opgelost]


BlackAdder
%Europe/Berlin %584 %2005, 15:01
Beste Flashers,

Ik heb een simpele vraag betreft een stukje PHP. Een aangemaakt txt-bestand ziet er alsvolgt uit:
01000,artikel1
02000,artikel2
03000,artikel3
Hierin zijn artikelnummers en artikelnamen door middel van een ',' gescheiden.
De site zoekt informatie bij elkaar d.m.v. een artikelnummer.

Nu heb ik dit stukje script geschreven:<?
if($_GET['subgroep']!=""){
$path = "producten/".$_GET['subgroep'].".txt";
} else {
$path = "producten/".$_GET['groep'].".txt";
}
if(file_exists($path)){
$lines = file($path);
foreach ($lines as $line) {
list($a, $b) = explode(',', $line);
print "<span class=\"".$_GET['groep']."\">".$a."</span> - ".$b;
}
}
?>
Nu geeft dit als output:01000 - artikel1 02000 - artikel2 03000 - artikel3
Het artikelnummer wordt op de rest van de site gedefinieerd als $product, welke in bovenstaandscript dus gelijk is aan $a. $b is de naam van het artikel.
Hoe zorg ik er nu voor dat alleen de tekstlijn van het artikel $product wordt weergegeven en niet alle andere producten ook.
Bijvoorbeeld; $product = "02000" geeft als output 02000 - artikel2 (alleen $a en $b van regel2 worden gebruikt)

Hoop dat ik het een beetje duidelijk heb kunnen formulieren.
Bij voorbaat dank voor elke hulp!

Groet,
Nils

BlackAdder
%Europe/Berlin %846 %2005, 21:18
Heb inmiddels zelf het antwoord gevonden, uiteraard was t vrij simpel, stom dat ik er niet opkwam.. maargoed hieronder de werkende code, mocht iemand er nog wat aan hebben:<?
if($_GET['subgroep']!=""){
$path = "producten/".$_GET['subgroep'].".txt";
} else {
$path = "producten/".$_GET['groep'].".txt";
}
if(file_exists($path)){
$lines = file($path);
foreach ($lines as $line) {
list($a, $b) = explode(',', $line);
if($a==$_GET['product']){
print "<span class=\"".$_GET['groep']."\">".$a."</span> - ".$b;
}
}
}
?>de oplossing zit inif($a==$_GET['product']){ }wat een doodleuk if-statement is...

Evengoed bedankt & groet