onico0 Posté 7 Mai 2006 Posté 7 Mai 2006 Bonjour à tous !! Je suis vraiment déséspérer, je bloque depuis des heures avec un code qui ne marche pas. Ce code permet en principe de : Ce connecter à une base. Ce connecter à une Table1. Récupérer et traiter les données de la Table1 dans une boucle. Dans cette boucle insérer plusieurs données dans une Table2. Ce deconnecter de mysql à la fin. Donc voici mon code, il ne marche pas : Code : PHP <?php//LISTE LES URLmysql_connect('localhost', 'onico0', 'javaismisunpass');mysql_select_db("gratos");$reponse = mysql_query("SELECT url FROM Table1");while ($donnees = mysql_fetch_array($reponse)){$url = $donnees['url'];//CAPTAGE DE LA BALISE TITLE$file = fopen ($url, "r");if (!$file) { echo "<p>Impossible de lire la page.\n"; exit;}while (!feof ($file)) { $line = fgets ($file, 1024); if (eregi ("<title>(.*)</title>", $line, $out)) { $title = htmlentities($out[1]); break; }}fclose($file);//title ok//RECUP DES METATAG $tags = get_meta_tags($url); if(!$title){$title=htmlentities($tags['title']);} // Titre $langue=htmlentities($tags['language']); // langue $description=htmlentities($tags['description']); // DESCRIPTION $keywords=htmlentities($tags['keywords']); // motsclésif($title==false) { echo "Pas de balise title"; }elseif ($langue==false){echo "Pas de balise langue";}elseif ($description==false){echo "Pas de balise description";}elseif ($keywords==false){echo "Pas de balise keywords";}else { //INSERTION DANS LA BDD$point = 1;echo $title;echo '<br>';echo $langue;echo '<br>';echo $description;echo '<br>';echo $keywords;echo '<br>';echo $url;mysql_query("INSERT INTO `Table2` ( `id` , `url` , `titre` , `description` , `keyword` , `point` , `notfound` ) VALUES ( '', '$url', '$title', '$description', '$keywords', 1, 'non' );"); // /!\ c'est ici que sa ne marche pas } //fin du else final} //fin boucle Table1mysql_close();?> Je n'ai aucun message d'erreur, mon prob c'est que les données ne sont pas insérer pourtant je les vois en fesant un echo. Merci d'avance. et voici la stucture de ma base de donnée: Field name Type Allow nulls? Key Default value Extras id int(11) Non Primary auto_increment url text Non None titre text Non None description text Non None keyword text Non None point int(11) Non None 1 notfound text Non None thx
Portekoi Posté 7 Mai 2006 Posté 7 Mai 2006 Bonjour, Et si tu affcihes ta requete et que tu la colles dans phpmyadmin, ca donne quoi? Portekoi
onico0 Posté 7 Mai 2006 Auteur Posté 7 Mai 2006 Bonjour, Et si tu affcihes ta requete et que tu la colles dans phpmyadmin, ca donne quoi? Portekoi <{POST_SNAPBACK}> Je suis dans l'impossibilité de le faire car ce script nécéssite de lire des meta tag et mysql n'en est pas capable, de plus je n'utilise pas phpmyadmin mais Webmin.
Portekoi Posté 7 Mai 2006 Posté 7 Mai 2006 Bonjour, Ca n'a rien à voir. Ne peux tu pas faire ceci : echo "INSERT INTO `Table2` ( `id` , `url` , `titre` , `description` , `keyword` , `point` , `notfound` )VALUES ( '', '$url', '$title', '$description', '$keywords', 1, 'non' );"; Qu'est qui t'en empêche? Portekoi
onico0 Posté 7 Mai 2006 Auteur Posté 7 Mai 2006 Justement c'est ça ma question , mon script devrais fonctionner parfaitement mais les données ne s'ajoutes pas et aucune erreur. J'ai essayer d'ajouter une entrée via webmin en respectant les même caractèristiques de mon script et l'ajout ce faire sans problème. Est ce qu'on peu travailler sur une table 2 en étant dans une boucle de données 1? Sinon comment extraire mes données de ma boucle 1 pour les mettre dans ma table 2.
Portekoi Posté 7 Mai 2006 Posté 7 Mai 2006 Re, Si tu ne fais pas ce que je te demande, je ne vois pas comment t'aider plus. Donc bon courage Portekoi
onico0 Posté 7 Mai 2006 Auteur Posté 7 Mai 2006 Re, Si tu ne fais pas ce que je te demande, je ne vois pas comment t'aider plus. Donc bon courage Portekoi <{POST_SNAPBACK}> Si tu comprend pas que je te dis que j'ai pas phpmyadmin et que la req nécéssite d'avoir des données en provenance de meta tag t'es pas les meilleur modo du monde. Ne te sent pas obliger de répondre aux appel à l'aide de tous tes visiteurs, contente toi d'aider ceux que tu sais aider
TheRec Posté 7 Mai 2006 Posté 7 Mai 2006 Bonjour, Ce ne sont pas seuelement "ses" visiteurs, le Hub est une communauté d'entraide...il essaie de t'aider et tu ne semble pas disposer à accepter son aide... Bref, passons à ton problème... après ta requête INSERT, as-tu essayé d'afficher le dernier message d'erreur généré par MySQL ? Sinon, utilise ce code juste après la requête INSERT : echo mysql_errorno()." : ".mysql_error();
Portekoi Posté 7 Mai 2006 Posté 7 Mai 2006 Si tu comprend pas que je te dis que j'ai pas phpmyadmin et que la req nécéssite d'avoir des données en provenance de meta tag t'es pas les meilleur modo du monde. Ne te sent pas obliger de répondre aux appel à l'aide de tous tes visiteurs, contente toi d'aider ceux que tu sais aider Ta requete plante dans... un script php. Je te demande de faire un echo de ta requete dans... un script php. Qu'est ce que tu ne comprends pas dans ma demande? Si ta requete ne se fait pas dans ton script mais fonctionne dans ton SGBDR, as t on avis, d'ou viens le problème? Donc affiche ta requete ou, comme TheRec te le demande, affiche un mysql_error()... Portekoi
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant