XML database specifieke foreach ophalen voor pagina
Ik hoop dat jullie mij kunnen helpen.
Ik ben bezig met een website, en hiervoor moet ik vanuit de naam (?action=ophalen)
als action=ophalen moet hij alleen uit de xml database alle resultaten waar <service>ophalen</service> klopt, eruit halen, is hiervoor een simpele code of niet?
(heb het hele internet al afgezocht zonder resultaat...)
Gewijzigd op 06/10/2013 11:30:34 door Yoran Kuiper
Heb je al naar SimpleXML gekeken? want daarmee kan je heel handig XML-nodes uitlezen. En vergelijken is ook dan erg makkelijk.
Kijk ook eens op www.phptuts.nl
- SanThe - op 06/10/2013 11:47:32:
Zie $_GET en if(). Dit is gewoon basic php.
Kijk ook eens op www.phptuts.nl
Kijk ook eens op www.phptuts.nl
Waaronder moet ik dan zoeken?
Yoran Kuiper op 06/10/2013 11:48:58:
Waaronder moet ik dan zoeken?
- SanThe - op 06/10/2013 11:47:32:
Zie $_GET en if(). Dit is gewoon basic php.
Kijk ook eens op www.phptuts.nl
Kijk ook eens op www.phptuts.nl
Waaronder moet ik dan zoeken?
Ik snap dat dat basis is, en dat gedeelte snap ik ook, maar ik weet niet hoe ik het moet integreren in de xml code...
- Aar - op 06/10/2013 11:53:23:
Die had ik dus geprobeerd, en deze ook maar als ik hem aanpas (dus else erbij plaats)
Code (php)
Als ik dan service verander, blijft hij correct echoön...
geeft uit
echo "<pre>".print_r($xml,1)."</pre>";
Gewijzigd op 06/10/2013 12:23:08 door - Ariën -
- Aar - op 06/10/2013 12:21:19:
Wat meldt print_r($xml);
alles wat er in products.xml staat..
Yoran Kuiper op 06/10/2013 12:22:43:
alles wat er in products.xml staat..
- Aar - op 06/10/2013 12:21:19:
Wat meldt print_r($xml);
alles wat er in products.xml staat..
Laat de output (tussen <pre>, zoals mijn edit) eens zien dan?
Gewijzigd op 06/10/2013 12:24:18 door - Ariën -
- Aar - op 06/10/2013 12:23:58:
Laat de output (tussen <pre>, zoals mijn edit) eens zien dan?
Yoran Kuiper op 06/10/2013 12:22:43:
alles wat er in products.xml staat..
- Aar - op 06/10/2013 12:21:19:
Wat meldt print_r($xml);
alles wat er in products.xml staat..
Laat de output (tussen <pre>, zoals mijn edit) eens zien dan?
dit wordt een grote code..
<code>
SimpleXMLElement Object
(
[product] => Array
(
[0] => SimpleXMLElement Object
(
[id] => 1
[name] => hondenbrokken
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkah
[price] => 10,00
[artnmmr] => 1234567890
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[1] => SimpleXMLElement Object
(
[id] => 2
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahah
[price] => 11,00
[artnmmr] => 1234567891
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[2] => SimpleXMLElement Object
(
[id] => 3
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahdah
[price] => 12,00
[artnmmr] => 1234567892
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[3] => SimpleXMLElement Object
(
[id] => 4
[name] => hondenbrokken
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkah
[price] => 10,00
[artnmmr] => 1234567890
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[4] => SimpleXMLElement Object
(
[id] => 5
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahah
[price] => 11,00
[artnmmr] => 1234567891
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[5] => SimpleXMLElement Object
(
[id] => 6
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahdah
[price] => 12,00
[artnmmr] => 1234567892
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[6] => SimpleXMLElement Object
(
[id] => 7
[name] => hondenbrokken
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkah
[price] => 10,00
[artnmmr] => 1234567890
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[7] => SimpleXMLElement Object
(
[id] => 8
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahah
[price] => 11,00
[artnmmr] => 1234567891
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[8] => SimpleXMLElement Object
(
[id] => 9
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahdah
[price] => 12,00
[artnmmr] => 1234567892
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[9] => SimpleXMLElement Object
(
[id] => 10
[name] => hondenbrokken
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkah
[price] => 10,00
[artnmmr] => 1234567890
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[10] => SimpleXMLElement Object
(
[id] => 11
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahah
[price] => 11,00
[artnmmr] => 1234567891
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
[11] => SimpleXMLElement Object
(
[id] => 12
[name] => hondenbrok
[merk] => peddingree
[service] => ophalen
[webshop] => SimpleXMLElement Object
(
[description] => lekkahdah
[price] => 12,00
[artnmmr] => 1234567892
[catagorie] => Dieren
[image] => product_images/huishoudelijk/170697.jpg
)
)
)
[service] => ophalen
)
</code>
Gewijzigd op 06/10/2013 12:30:24 door Yoran Kuiper
if ($xml->service="ophalen") {
= moet zijn ==
if ($xml->service=="ophalen") {
Verder moet er natuurlijk ook aangegeven worden in welke node er moet worden gecontroleerd op 'ophalen'.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$catagorie = $xml->catagorie;
if($xml->catagorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
foreach ($product->webshop as $webshop) {
echo '<img src="'.$webshop->image.'" /><br />';
}
foreach ($product->webshop as $webshop) {
echo $webshop->description;
}
foreach ($product->webshop as $webshop) {
echo '<p class="product_price">'.$webshop->price.'</p>';
}
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo '</div>';
}
}
else {
echo "Je hebt geen catagorie gekozen!";
}
?>
$catagorie = $xml->catagorie;
if($xml->catagorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
foreach ($product->webshop as $webshop) {
echo '<img src="'.$webshop->image.'" /><br />';
}
foreach ($product->webshop as $webshop) {
echo $webshop->description;
}
foreach ($product->webshop as $webshop) {
echo '<p class="product_price">'.$webshop->price.'</p>';
}
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo '</div>';
}
}
else {
echo "Je hebt geen catagorie gekozen!";
}
?>
</code>
dit moet in iedergeval gaan werken...
Toevoeging op 06/10/2013 13:05:21:
- Aar - op 06/10/2013 12:33:12:
Aaarch :P
Verder moet er natuurlijk ook aangegeven worden in welke node er moet worden gecontroleerd op 'ophalen'.
Verder moet er natuurlijk ook aangegeven worden in welke node er moet worden gecontroleerd op 'ophalen'.
Zie jij wat er fout is aan het boven aangegeven script? ik zie het namelijk niet...
Toevoeging op 06/10/2013 14:11:30:
$xml = simplexml_load_file('products.xml');
// 1 van de producten, inclusief naam en dergelijken eruit halen!
echo ' deze '.$xml->product[0]->catagorie.' zijn gemaakt door '.$xml->product[0]->merk.'<br>';
Het gedeelte '.$xml->product[0]->catagorie.' wilt niet werken... heel vreemd
Toevoeging op 06/10/2013 15:27:49:
Dat probleem is nu dus ook opgelost, zit nu alleen nog dattie ze niet weergeeft...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
if($xml->product->categorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
echo '<img src="'.$product->image.'" /><br />';
echo $product->description;
echo '<p class="product_price">'.$product->price.'</p>';
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo '</div>';
}
}
else {
echo "Je hebt geen categorie gekozen!";
}
?>
if($xml->product->categorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
echo '<img src="'.$product->image.'" /><br />';
echo $product->description;
echo '<p class="product_price">'.$product->price.'</p>';
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo '</div>';
}
}
else {
echo "Je hebt geen categorie gekozen!";
}
?>
hij blijft sturen, Je hebt geen Categorie gekozen!..
Toevoeging op 06/10/2013 15:43:41:
Okee, ik ben weer een stukje verder, hij weergeeft nu alles zoals het hoort, maar... hij doet dit dus alleen bij 1 pagina, ik heb één een andere categorie gegeven, en hij zet het niet in de andere pagina... iemand idee hoe dit te veranderen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
if($xml->product->categorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
echo '<img src="'.$product->image.'" /><br />';
echo $product->description;
echo '<p class="product_price">'.$product->price.'</p>';
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo $product->id;
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo $product->categorie;
echo '</div>';
}
}
else {
echo "Je hebt geen categorie gekozen!";
}
?>
if($xml->product->categorie==$_GET['cat']) {
foreach ($xml->product as $product) {
echo '<div class="product_box">';
echo '<h3>'.$product->name.'</h3>';
echo '<img src="'.$product->image.'" /><br />';
echo $product->description;
echo '<p class="product_price">'.$product->price.'</p>';
echo '<a href="shoppingcart.php?action=add&id='.$product->id.'" class="addtocart"></a>';
echo $product->id;
echo '<a href="product.php?id='.$product->id.'" class="detail"></a>';
echo $product->categorie;
echo '</div>';
}
}
else {
echo "Je hebt geen categorie gekozen!";
}
?>