[PHP] récupérer le code source
Dernière réponse : dans Programmation
Salut tout le monde,
J'aimerai savoir quelle méthode peut on utiliser pour récupérer le code source d'une page web dans une variable php.
Merci deme dire si je suis pas clair
J'aimerai savoir quelle méthode peut on utiliser pour récupérer le code source d'une page web dans une variable php.
Merci deme dire si je suis pas clair
Autres pages sur : php recuperer code source
Lassé par la pub ? Créez un compte
enfaite je souhaite créer un script (php) qui a une page html a visiter et qui récupère le code source de la page et le stoc dans une variable php.
J'espère avoir été plus clair! j'avais pensé a un code de ce type, qu'en pensez vous? :
J'espère avoir été plus clair! j'avais pensé a un code de ce type, qu'en pensez vous? :
<?php
function getSource($url) {
$file = fopen ($url,"r");
if (!$file) {
return null;
}
$doc = "";
while (!feof ($file)) {
$doc .= fgets ($file, 1024);
fclose($file);
return $doc;
}
?>
Mon code est :
mais il m'affiche un message d'erreur :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in /www/sites/1/ifrance.com/g/b/gbsoundsystem/site/test.php on line 2
<?php
function getSource('<a href="http://www.webcarcenter.com/occasion/bmw/serie-3/330/1988470.html" target="_blank">http://www.webcarcenter.com/occasion/bmw/serie-3/330/19...</a>') {
$file = fopen ($url,"r" );
if (!$file) {
return null;
}
$doc = "";
while (!feof ($file)) {
$doc .= fgets ($file, 1024);
fclose($file);
return $doc;
}
}
?>
mais il m'affiche un message d'erreur :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in /www/sites/1/ifrance.com/g/b/gbsoundsystem/site/test.php on line 2
heu 2dpix ? le script il est pas de toi je supposes.....
Renseigne toi un peu sur le php avant de faire des grosse boulettes...
la tu viens de déclarer ta fonction que tu as gentiment faite....
ensuite tu l'appelles comme ceci :
Renseigne toi un peu sur le php avant de faire des grosse boulettes...
1. <?php
2. function getSource($url) {
3. $file = fopen ($url,"r" );
4. if (!$file) {
5. return null;
6. }
7. $doc = "";
8. while (!feof ($file)) {
9. $doc .= fgets ($file, 1024);
10. fclose($file);
11. return $doc;
12. }
13. }
14. ?>
la tu viens de déclarer ta fonction que tu as gentiment faite....
ensuite tu l'appelles comme ceci :
$mon_code_source = getSource('<a href="http://www.toto.com/ma_page.html" target="_blank">http://www.toto.com/ma_page.html</a>');
kymic, si si le code est de moi: je te remercie je sais comment appeller une fonction.
Okinou, j'ai bien lu les pages mais je vois pas bien comment utiliser ces fonctions pour ce que je veut faire. tu peut m'éclairer un peu plus?
EDIT: Okinou je supose que tu parlai de ça :
Le contenu de ce tampon peut être copié dans une chaîne avec la fonction ob_get_contents().
Mais ceci marche seulement sur les pages de mon propre serveur, alors que là je souhaite récupérer le code source de pages étant situées sur un autre serveur.
Okinou, j'ai bien lu les pages mais je vois pas bien comment utiliser ces fonctions pour ce que je veut faire. tu peut m'éclairer un peu plus?
EDIT: Okinou je supose que tu parlai de ça :
Citation :
ob_start : Cette fonction démarre la tamporisation de sortie. Tant qu'elle est enclenchée, aucune donnée, hormis les en-têtes, n'est envoyée au navigateur, mais temporairement mise en tampon.Le contenu de ce tampon peut être copié dans une chaîne avec la fonction ob_get_contents().
Mais ceci marche seulement sur les pages de mon propre serveur, alors que là je souhaite récupérer le code source de pages étant situées sur un autre serveur.
j'ai fait ce petit code :
Ca vous semble bon ?
Mais j'obtient cette erreur :
URL file-access is disabled in the server configuration;
est-ce visible dans le phpinfo ?
<?php
ob_start();
include('<a href="http://www.webcarcenter.com/occasion/bmw/x3/1988624.html" target="_blank">http://www.webcarcenter.com/occasion/bmw/x3/1988624.htm...</a>');
$source = ob_get_contents();
?>
Ca vous semble bon ?
Mais j'obtient cette erreur :
URL file-access is disabled in the server configuration;
est-ce visible dans le phpinfo ?
Non, le problème vient de la configuration du serveur qui refuse l'ouverture de fichiers distants...
Peut-être qu'en passant par fsockopen, ça marchera mieux...
Pour Okinou:
Peut-être qu'en passant par fsockopen, ça marchera mieux...
Pour Okinou:
Citation :
Les versions Windows de PHP antérieures à la version 4.3.0 ne supportent pas l'accès aux fichiers distants avec cette fonction, même si allow_url_fopen est activé.
okinou, 4.3.2 est supérieure à 4.3.0 si je ne m'abuse
2dpix: file_get_contents est en PHP5.
Si ton fsockopen fonctionne, tu peux faire:
Petit détail: changer $source (identifiant de connexion) en $source (variable string) ne peut que tout planter...
2dpix: file_get_contents est en PHP5.
Si ton fsockopen fonctionne, tu peux faire:
$inF = fsockopen("ton url") or die('fsockopen interdit');
while (!feof($inF)) {
echo fgets($inF);
}
fclose($inF);
Petit détail: changer $source (identifiant de connexion) en $source (variable string) ne peut que tout planter...
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :