resume autre page

Eléphanteau du PHP | 26 Messages

08 févr. 2012, 22:50

Bonsoir je souhaite afficher les 200 premiers caractères d une autre page
j ai fait ceci mais cela ne fonctionne pas! il y a t il une autre solution? merci
$filename = 'personnageg.php';
echo "<a href=\"$filename\"></a>";
$machaine="<a href=\"$filename\"></a>";
echo substr ($machaine,0,5);

Eléphanteau du PHP | 46 Messages

08 févr. 2012, 23:03

J'ai trouvé ça si ça peut t'aider :
<?php
// Lit 200 caractères à partir du premier
$section = file_get_contents('fichier.php', NULL, NULL, 1, 200);
var_dump($section);
?>
Cordialement

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

08 févr. 2012, 23:06

Ca c'est un lien html.. ça permet au navigateur de te renvoyer vers une nouvelle page. Ce que tu veux faire, c'est lire le contenu d'une page, il faut donc t'appuyer sur le système de fichier.

Pour cela tu peux ouvrir le fichier (ou l'url) avec fopen(), lire le fichier avec fread(), récupérer les données qui t'intéressent (attention car tu récupères le code source et pas seulement ce qui apparait à l'écrant) et refermer le fichier avec fclose()

Ou tu peux également utiliser des fonctions comme file_get_contents() pour lire celui-ci...

Edit : ah ben grillé :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 26 Messages

09 févr. 2012, 00:40

Ok merci je vient découvrir les fonction fgetss et fread aussi je verrai cela demain si on peut faire quelque chose avec

Eléphanteau du PHP | 26 Messages

09 févr. 2012, 12:18

Encore merci de votre aide voila pour ceuw que cela interesse
$texte = nl2br(file_get_contents("$filename"));  //Ouverture de la page a recuper

$baliseDebut = "<contenu>";  //on lui dit de prendre a partir de la balise <contenu>

$pos1 = strpos( $texte, $baliseDebut ) + strlen( $baliseDebut ); //Position <contenu> + longueur de <contenu>

$baliseFin = "</contenu>";  // on lui dit jusque la balise </contenu>

$pos2 = strpos( $texte ,$baliseFin );  // Position </contenu>

$titre = substr( $texte, $pos1, $pos2 - $pos1 ); // On récupère le contenu

echo substr ($titre,0,700); // et la on lui dit entre le caractere 0 et 700 soit les 700 premier caractere

et on peut faire le meme avec les balise titre etc