Jump to content

stever34

Webmaster Régulier
  • Content Count

    60
  • Joined

  • Last visited

Community Reputation

0 Neutre
  1. stever34

    Parser une page

    Sur la page externe a mon site (serveur) http://www.quid.fr/communes.html?mode=deta...amp;style=fiche je tente de trouver dans le code source (html) de la page la ligne qui contient le mot clef "Nom de la commune" $line=fgets($file,1024); while(!strstr($line,"Nom de la commune")) en suite je tente de recupérer dans cette ligne les caractères contenus entre les balises <strong> ereg(" (<strong>[alpha]-[alpha]</strong>)</b>",$line,$no); pour enfin afficher le nom de la commune grace a la variable $parser (sur mon site) echo $parser->get_nom_commune();
  2. stever34

    Parser une page

    (Nom mais c'est pour avoir un exemple) ce la peut s'adapter au loto ou meme a son propre site perso, le but étant de connaitre la méthode du parsing appliqué a un exemple. Les info intéressantes a récupérer sont : <table class="donneesprincipales"> <tr> <td><h4>Nom de la commune</h4><strong>Lisle-en-Rigault</strong></td> <td><h4>Région</h4><a href="./regions.html?mode=detail&reg=57" title="fiche de la région">Lorraine</a></td> <td><h4>Département</h4><a href="./departements.html?mode=detail&dep=55&style=fiche" title="fiche du département">Meuse</a> (55)</td> <td><h4>Code postal</h4><a href="./communes.html?mode=query&req=55000&style=fiche&zoom=1" title="toutes les communes ayant ce code postal">55000</a></td> </tr> </table> Il faut donc analyser avec un script : parser.php <?php class parser { var $filename; function parser($filename) { $this->filename=$filename; } function get_nom_commune() { $file=fopen($this->filename,"r"); if (!$file) { echo "<p>Impossible d'ouvrir le fichier</p>.\n"; exit; } $line=fgets($file,1024); while(!strstr($line,"Nom de la commune")) { $line=fgets($file,1024); } fclose($file); ereg("<br>(<strong>[alpha]-[alpha]</strong>)</b>",$line,$no); return $no[1]; } } ?> puis l'afficher page.php <?php require "parser.php"; $parser=new parser("http://www.quid.fr/communes.html?mode=detail&id=21332&req=Lis&style=fiche "); ?> <html> <head> <title>Nom commune</title> </head> <body> <center> <h1>Le nom est</h1> <h2><font color="blue"><?php echo $parser->get_nom_commune(); ?></font></h2> <h2>1er exemple</h2> </center> </body> </html> Mais ca marche pas SOS
  3. stever34

    Parser une page

    Le theme parser n'est peut etre pas bon, on tous cas ce que je veux faire c'est enregistrée des info d'un site pour construire une base de donnée. si quelqu'un a un exemple de methode pour enregistrer des info d'un page avec le script je devrai pouvoir l'adapter a mon cas.
  4. stever34

    Parser une page

    Bonjour je viens de découvrir qu'il est possible de parse des pages internet j'avoue que je suis perdu personne n'aurais un petit coup de pouce a me donner pour récupérer par exemple sur la page suivante : http://www.quid.fr/communes.html?mode=deta...amp;style=fiche les info suivantes : Nom de la commune : Lisle-en-Rigault Superficie : 1054 hectares Altitude : 187 mètres et les enregistrer dans un fichier idem pour toutes les communes sachant que je peux avoir la liste des communes (qui est la variable de la regete).
  5. stever34

    Villes et communes

    Ok merci pour l'info et concernant les superficie des communes si quelqu'un a une info ? idem pour les coodonnées (longitude latitude) car sur le site de l'ing y a rien a telecharger...
  6. stever34

    Villes et communes

    avec un aspirateur de site je vais avoir les pages HTML mais apres va faloir que je recopie des 36 000 info ???
  7. stever34

    Villes et communes

    merci pour l'info mais j'ai passé l'aprem sur ec site il ne donne les info que ville par ville pas dans un seul tableau ce qui fait 36 000 * 3 min pour tout relever et en plus il n'y a pas les superficies. sur www.quid.fr il y a tout ce que je veux mais c'est pire la il me faut 36 000 * 5 min pour tout faire a la main pas top top ??? entre () c'est possible un script qui pompe et enregistre toutes les pages, enfin pas tout le contenue juste que les info qui intéresse lol. faut passer une page apres l'autre... Et en plus y a pas les surface sur insee.fr il faut apres aller sur ign.fr et recommencer a la main 36 000 * 3 min
  8. stever34

    Villes et communes

    Bonjour je recherche une liste contenant les population et les superficie des communes francaise (ressencement 1999) si quelqiu'un a des info ?
  9. stever34

    Upload

    Salut J'aimerai envoyer un fichier contenant des info dans une base de données. Je viens de trouver cela sur la documentation MySQL LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'nom_de_fichier.txt' [REPLACE | IGNORE] INTO TABLE nom_de_table [FIELDS [TERMINATED BY '\t'] [[OPTIONALLY] ENCLOSED BY ''] [ESCAPED BY '\\' ] ] [LINES TERMINATED BY '\n'] [IGNORE nombre LINES] [(nom_de_colonne,...)] Si y a quelqu'un qui a l'habitude de faire des upload de fichier pouvez vous me commenter (en français simple, pas en jargon d'info) chaque ligne en expliquant leur role et s'il faut tout mettre ou s'il y a des truc optionnel. Au fait ou dois je mettre mon fichier texte ? le chemin du fichier s'écrit à partir d'ou (du dossier qui contient le script, du dossier qui contient MySQL...).
  10. stever34

    Return quoi ?

    Oui merci la confusion vient bien du fait que les 2 variables portent le meme nom mais qu'en réalité ce ne sont pas les même variable. mais c'est toujours pas clair a 100 % Dans la fonction j'ai $volumelocal, qui n'existe que dans la fonction. quand le script exécute la ligne Il fait bien le calcul ? donc $volumelocal existe. return renvoie la variable $volumelocal a qui ??? puisque en dehors du script ma variable ne s'appelle plus pareil $volumeglobal
  11. stever34

    Return quoi ?

    Bonjour je ne comprend pas l'intéret de RETURN <?php // Ci-dessous, la fonction qui calcule le volume du cône function VolumeCone($rayon, $hauteur) { $volume = $rayon * $rayon * 3.14 * $hauteur * (1/3); // calcul du volume return $volume; } $volume = VolumeCone(3, 1); echo "Le volume d'un cône de rayon 3 et de hauteur 1 est de $volume"; ?> c'est quoi le role de return il envoie la valeur a qui ???
  12. Bonjour Pour des raison de sécurité il est souvent conseillé de faire fichier contenant les données localhost, motdepasse, login puis de l'inclure dans le script. Mais si quelqu'un arrive a lire le script.php pour voir le mot de passe qu'est ce que ca change de sortir les paramètre pour les isoler dans un fichier config.php Puisque s'il arrive a voir le code source de script.php il n'aura pas de mal a lire le code source de config.php ????
  13. Salut avec mes petit moyen voici ce que j'arrive a faire create table codpostal ( cp_codpos char(10) not null, cp_ville char(30) not null, cp_pays char(3), cp_noinsee char(10) not null, cp_bureaudist char(30) not null ); create index cp_codpos on codpostal (cp_codpos); create index cp_ville on codpostal (cp_ville); create index cp_noinsee on codpostal (cp_noinsee); create index cp_bureaudist on codpostal (cp_bureaudist); INSERT INTO codpostal VALUES('01400', 'L ABERGEMENT CLEMENCIAT', '100', '01001', 'L ABERGEMENT CLEMENCIAT'); INSERT INTO codpostal VALUES('01640', 'L ABERGEMENT DE VAREY', '100', '01002', 'L ABERGEMENT DE VAREY'); INSERT INTO codpostal VALUES('01090', 'AMAREINS', '100', '01003', 'AMAREINS FRANCHELEINS'); INSERT INTO codpostal VALUES('01500', 'AMBERIEU EN BUGEY', '100', '01004', 'AMBERIEU EN BUGEY'); INSERT INTO codpostal VALUES('01330', 'AMBERIEUX EN DOMBES', '100', '01005', 'AMBERIEUX EN DOMBES'); INSERT INTO codpostal VALUES('01300', 'AMBLEON', '100', '01006', 'AMBLEON'); INSERT INTO codpostal VALUES('01500', 'AMBRONAY', '100', '01007', 'AMBRONAY'); INSERT INTO codpostal VALUES('01780', 'AMBUTRIX', '100', '01008', 'AMBUTRIX'); INSERT INTO codpostal VALUES('01300', 'ANDERT ET CONDON', '100', '01009', 'ANDERT ET CONDON'); Si je crée un fichier txt ou sur chaque ligne une VILLE avec ces champs séparé par une virgule comment faire pour automatiser l'envoie '01500', 'AMBRONAY', '100', '01007', 'AMBRONAY' '01780', 'AMBUTRIX', '100', '01008', 'AMBUTRIX' '01300', 'ANDERT ET CONDON', '100', '01009', 'ANDERT ET CONDON' Faut que je lance LOAD DATA INFILE "nomdufichier.txt" INTO TABLE nomdelatable; cette commande lit le fichier texte et insère dabs la table. Les champs doivent être séparés par des tabulations et entouré d'apostrophe chaque ligne étant séparé par une séquence de nouvelle ligne \n et les caractère spéciaux doivent être échappés par \ C'est bien quand on a fait le fichier texte en connaissant cela mais si on a un fichier texte ou les champs ne sont pas séparé par des tabulation mais par des virgules et que chaque ligne n'est pas séparé par \n mais juste par un retour chariot On fait comment (vous voyer je fais plein déforts) LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name [FIELDS [TERMINATED BY '\t'] [[OPTIONALLY] ENCLOSED BY ''] [ESCAPED BY '\\' ] ] [LINES [STARTING BY ''] [TERMINATED BY '\n'] ] [IGNORE number LINES] [(col_name,...)] j'ai aussi trouvé cela mais j'ai pas les connaissances pour comprendre tout ce que cela veut dire en français depuls j'ai l'impression que la je suis dans le SQL et moi je fait tout depuis des pages php (je vais pas dans SQL passer des commande directement je fait que des requetes depuis php)
  14. peux tu m'expliquer pourquoi est ce que c'est parceque je vais avoir plusieurs fois le meme nom de département dans la table COMMUNE. Je sent que c'est pour cela, mais je sais pas m'expliquer pourquoi, quelles sont les conséquences ? Pourquoi ???
  15. Bonjour, c'est parti... Je veux enregistré des noms de villes, leur code postal et leur nom de département. Dois je faire une seule table VILLE, dans laquelle l'info département sera forcement répété plusieur fois. Ou faut il aussi faire une table DEPARTEMENT
×
×
  • Create New...