Hallo!
Ich habe folgendes Vorhaben: ich versuche auf einer Seite eine alphabetische Liste von verlinkten Herstellerlogos auszugeben. Da diese Liste regelmäßig überarbeitet wird (weil neue Einträge dazukommen oder alte hinausfliegen), würde ich gerne etwas mehr oder weniger dynamisches haben, wo ich Hersteller-URL und den Herstellernamen nur in einem array einfügen muss und die Sortierung dann automatisch folgt.
Grundsätzlich hätte ich das so umgesetzt (in diesem Beispiel werden die URLs in einem p tag ausgegeben, Logos werden nicht dargestellt, es geht hier lediglich um die Grundfunktion):
Das Ergebnis sieht dann so aus:
Das ganze könnte ich dann entpsrechend anpassen um die verlinkten Bilder auszugeben und fertig... Das Problem an der Sache ist, dass manche der Hersteller-URLs nicht den Herstellernamen in der URL haben, sondern eine ID die diesem Hersteller entspricht. <?php $pos = strpos($url, $val); ?> hilft mir hier also nicht.
Ich brauche daher eine Möglichkeit, zu überprüfen, ob die Variable $url den Herstellernamen oder die Hersteller-Id beinhaltet.
Der obere Teil sieht dann also wiefolgt aus:
Statt ../Ghi.html heißt die URL jetzt ../119.html bzw statt ../Jkl.html jetzt ../236.html.
Ich hatte eigentlich gehofft, den Code so anpassen zu können um das zu erreichen, was ich vorhabe:
Leider werden die URLs mit den Ids so aber auch nicht dargestellt. Bzw mach ich aus <?php if ($idpos == true || $pos == true ): ?> ein <?php if ($idpos = true || $pos = true ): ?> (jeweils nur ein = ) wird mir folgendes ausgegeben:
Was mache ich falsch? Oder ist die Umsetzung von Anfang an Blödsinn und mein Vorhaben so gar nicht möglich? Danke im Voraus!
Ich habe folgendes Vorhaben: ich versuche auf einer Seite eine alphabetische Liste von verlinkten Herstellerlogos auszugeben. Da diese Liste regelmäßig überarbeitet wird (weil neue Einträge dazukommen oder alte hinausfliegen), würde ich gerne etwas mehr oder weniger dynamisches haben, wo ich Hersteller-URL und den Herstellernamen nur in einem array einfügen muss und die Sortierung dann automatisch folgt.
Grundsätzlich hätte ich das so umgesetzt (in diesem Beispiel werden die URLs in einem p tag ausgegeben, Logos werden nicht dargestellt, es geht hier lediglich um die Grundfunktion):
Code:
<?php
$urls = array("http://blabla/Def.html", "http://blabla/Ghi.html", "http://blabla/Mno.html", "http://blabla/Jkl.html", "http://blabla/Abc.html");
$namen = array("Mno", "Abc", "Jkl", "Def", "Ghi");
asort($namen);
?>
<?php foreach ($namen as $key => $val): ?>
<?php foreach ($urls as $url): ?>
<?php $pos = strpos($url, $val); ?>
<?php if ($pos == true ): ?>
<?php echo "<p>$url</p>"; ?>
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
Das Ergebnis sieht dann so aus:
Code:
http://blabla/Abc.html
http://blabla/Def.html
http://blabla/Ghi.html
http://blabla/Jkl.html
http://blabla/Mno.html
Das ganze könnte ich dann entpsrechend anpassen um die verlinkten Bilder auszugeben und fertig... Das Problem an der Sache ist, dass manche der Hersteller-URLs nicht den Herstellernamen in der URL haben, sondern eine ID die diesem Hersteller entspricht. <?php $pos = strpos($url, $val); ?> hilft mir hier also nicht.
Ich brauche daher eine Möglichkeit, zu überprüfen, ob die Variable $url den Herstellernamen oder die Hersteller-Id beinhaltet.
Der obere Teil sieht dann also wiefolgt aus:
Code:
<?php
$urls = array("http://blabla/Def.html", "http://blabla/119.html", "http://blabla/Mno.html", "http://blabla/236.html", "http://blabla/Abc.html");
$namen = array(001 => "Mno", 002 => "Abc", 236 => "Jkl", 003 => "Def", 119 => "Ghi");
asort($namen);
?>
Statt ../Ghi.html heißt die URL jetzt ../119.html bzw statt ../Jkl.html jetzt ../236.html.
Ich hatte eigentlich gehofft, den Code so anpassen zu können um das zu erreichen, was ich vorhabe:
Code:
<?php $pos = strpos($url, $val); ?>
<?php $idpos = strpos($url, $key); ?>
<?php if ($idpos == true || $pos == true ): ?>
<?php echo "<p>$url</p>"; ?>
<?php endif; ?>
Leider werden die URLs mit den Ids so aber auch nicht dargestellt. Bzw mach ich aus <?php if ($idpos == true || $pos == true ): ?> ein <?php if ($idpos = true || $pos = true ): ?> (jeweils nur ein = ) wird mir folgendes ausgegeben:
Code:
http://blabla/Def.html
http://blabla/119.html
http://blabla/Mno.html
http://blabla/236.html
http://blabla/Abc.html
http://blabla/Def.html
http://blabla/119.html
http://blabla/Mno.html
http://blabla/236.html
http://blabla/Abc.html
http://blabla/Def.html
http://blabla/119.html
http://blabla/Mno.html
http://blabla/236.html
http://blabla/Abc.html
http://blabla/Def.html
http://blabla/119.html
http://blabla/Mno.html
http://blabla/236.html
http://blabla/Abc.html
http://blabla/Def.html
http://blabla/119.html
http://blabla/Mno.html
http://blabla/236.html
http://blabla/Abc.html
Was mache ich falsch? Oder ist die Umsetzung von Anfang an Blödsinn und mein Vorhaben so gar nicht möglich? Danke im Voraus!
Zuletzt bearbeitet: