Bonjour.
J'essaie de remplacer tous les liens (l'attribut href) de toutes les balises a contenant la chaînes de caractères sitecontent du Document (représenté par la variable: $sitecontentTable) par un nouveau URL: href="C:\laragon\www/search.php?term=$term&type=sites":
Mais le mauvais constat est que au lieu que le paramètre term de l'URL prenne la valeur complète du nodeValue du DomDocument, qui est: Alibaba Pictures, cela retourne: href="C:\laragon\www/search.php?term=Alibaba&type=sites_Pictures".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $get_a_tags = $parser->getElementsByTagName("a"); define( 'BASE_PATH', __DIR__ . '/' ); foreach ($get_a_tags as $get_a_tag) { if (stripos($get_a_tag->getAttribute('href'), "/sitecontent/") !== false) { $get_href_in_a_infobox = $get_a_tag->getAttribute('href'); $term = $get_a_tag->nodeValue; $sitecontentTable = str_ireplace($get_href_in_a_infobox, BASE_PATH."search.php?term=$term&type=sites", $sitecontentTable); } }
Et là, vous pouvez remarquer que l'erreur est que le paramètre term retourne SEULEMENT Alibaba au lieu de Alibaba Pictures et le pire c'est que dans le même URL, le paramètre type (qui ne devrait normalement pas être modifié), prend la valeur de _Pictures.
Qu'est va mal dans mon Code ???
Comment corriger mon Code pour que l'attribut href retourne,
href="C:\laragon\www/search.php?term=$term&type=sites" au lieu de
href="C:\laragon\www/search.php?term=$term&type=sites_Pictures" que ça retourne actuellement ???
Merci de m'aider s'il vous plaît.
Partager