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":
Code : Tout sélectionner
$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);
}
}
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".
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.
Bonjour.
J'essaie de remplacer tous les liens (l'attribut [B]href[/B]) de toutes les balises [B]a[/B] contenant la chaînes de caractères [B]sitecontent[/B] du Document (représenté par la variable: [B]$sitecontentTable[/B]) par un nouveau URL: [B]href="C:\laragon\www/search.php?term=$term&type=sites"[/B]:
[CODE]$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);
}
}[/CODE]
Mais le mauvais constat est que au lieu que le paramètre [B]term[/B] de l'URL prenne la valeur complète du [B]nodeValue[/B] du [B]DomDocument[/B], qui est: [B]Alibaba Pictures[/B], cela retourne: [B]href="C:\laragon\www/search.php?term=Alibaba&type=sites_Pictures"[/B].
Et là, vous pouvez remarquer que l'erreur est que le paramètre [B]term[/B] retourne SEULEMENT [B]Alibaba[/B] au lieu de [B]Alibaba Pictures[/B] et le pire c'est que dans le même URL, le paramètre [B]type[/B] ([I]qui ne devrait normalement pas être modifié[/I]), prend la valeur de [B]_Pictures[/B].
Qu'est va mal dans mon Code ???
Comment corriger mon Code pour que l'attribut href retourne [B]href="C:\laragon\www/search.php?term=$term&type=sites"[/B] au lieu de [B]href="C:\laragon\www/search.php?term=$term&type=sites_Pictures"[/B] que ça retourne actuellement ???
Merci de m'aider s'il vous plaît.