Execution page php

[Résolu/Fermé]
Signaler
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
-
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
-
Bonjour,

J'ai écrit une page php qui est censée à son éxecution récupérer des données dans un fichiers
xml puis les mettre dans une base de données mais on m'affiche le code source et aucune
données n'a été rentré.

Quelqu'un peut-il me donner un bout de réponse ?

Merci.

4 réponses


Bonjour,

si l'exécution du pgm affiche le code c'est sans doute que le fichier n'est pas ouvert par un serveur.
avez-vous sur votre machine un serveur apache et un sgbd (genre easy php ou autre) ?
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
2
Bonjour,

Je travaille sur un serveur local Wamp et j'ai bien mis tous les fichiers utiles dans le répertoire www.
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
463 >
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009

bonjour à toi.

Pourrions nous voir ton code afin de pouvoir t'aider plus facilement ?

Messages postés
32757
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
25 septembre 2021
7 974
Salut,

Pour executer ton php, dans le navigateur tu passes bien via une adresse de type "localhost" pour passer par le serveur web ?

cdt
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
2
Bonjour,

Merci pour l'attention que vous portez à vouloir m'aider ci-après mon code :

// Pour chaque <item>
foreach($OFFERS->Resort as $Resort ) {

if ((int $Resort['Id']== 65)
{ foreach $Resort->Accomodation as $Accomodation){

//---- récupération des données du xml-----


//Création d'un objet accomodation
$idAccomodation=0;
do{ $idAccomodation++;
$result=mysql_query("SELECT * FROM accomodation WHERE idAccomodation=$idAccomodation;");
$num_detected=0;
if($row=mysql_fetch_array($result,MYSQL_ASSOC)) num_detected ++;
}
while ($num_detected!=0){
$name_acc=$Accomodation['Name'];
$id_xml_accomodation=$Accomodation['Id'];
$type_acc=$Accomodation['Type'];
$nb_stars=$Accomodation['NbStars'];
$main_pict_type=$Accomodation->MainPicture ['Type'];
$main_pict_url=$Accomodation->MainPicture;
$requete_accomodation = mysql_query("INSERT INTO accomodation(idAccomodation, id_xml_accomodation, name_acc, type_acc, nb_stars,main_pict_type,main_pict_url)
VALUES ( $idAccomodation, $id_xml_accomodation, $name_acc, $type_acc, $nb_stars,$nb_stars,$main_pict_type,$main_pict_url) " );}

// Objets languages prédéfinies dans la table par Phpmyadmin



// Création d'un objet presente

if ($Accomodation->libelle_fr!=0){
$idlangues=1;
$libelle=$Accomodation->libelle_fr;
$description=$Accomodation->description_fr;
$requete_presente = mysql_query(mysql_query("INSERT INTO presente(idAccomodation,idlangues,libelle,description)
VALUES ( '$idAccomodation', '$idlangues', $libelle, $description)";)}

if ($Accomodation->libelle_gb!=0){
$idlangues=2;
$libelle=$Accomodation->libelle_gb;
$description=$Accomodation->description_gb;
$requete_presente = mysql_query("INSERT INTO presente(idAccomodation,idlangues,libelle,description)
VALUES ( '$idAccomodation', '$idlangues', $libelle, $description)";)}

if ($Accomodation->libelle_de!=0){
$idlangues=3;
$libelle=$Accomodation->libelle_de;
$description=$Accomodation->description_de;
$requete_presente = mysql_query("INSERT INTO presente(idAccomodation,idlangues,libelle,description)
VALUES ( '$idAccomodation', '$idlangues', $libelle, $description)";)}

if ($Accomodation->libelle_du!=0){
$idlangues=4;
$libelle=$Accomodation->libelle_du;
$description=$Accomodation->description_du;
$requete_presente = mysql_query("INSERT INTO presente(idAccomodation,idlangues,libelle,description)
VALUES ( '$idAccomodation', '$idlangues', $libelle, $description)";)}

if ($Accomodation->libelle_fr!=0){
$idlangues=5;
$libelle=$Accomodation->libelle_it;
$description=$Accomodation->description_it;
$requete_presente = mysql_query("INSERT INTO presente(idAccomodation,idlangues,libelle,description)
VALUES ( '$idAccomodation', '$idlangues', $libelle, $description)";)}


// Création d'un objet photos

$idPhotos=0;
do{ $idPhotos++;
$result=mysql_query("SELECT * FROM photos WHERE idPhotos=$idPhotos;");
$num_detected=0;
if($row=mysql_fetch_array($result,MYSQL_ASSOC)) num_detected ++;
}
while ($num_detected!=0){
$photo_type=$Accomodation->Pictures->Photo['type'];
$photo_url=$Accomodation->Pictures->Photo;
;
$requete_photos = mysql_query("INSERT INTO photos(idPhotos, Photos_idAccomodation,photo_type,photo_url)
VALUES ( '$idPhotos', '$idAccomodation', '$photo_type', '$photo_url')";)}


//Création d'un objet product
foreach $Accomodation->$Products as $Products){
$idProduct=0;
do{ $idProduct++;
$result=mysql_query("SELECT * FROM product WHERE idProduct=$idProduct;");
$num_detected=0;
if($row=mysql_fetch_array($result,MYSQL_ASSOC)) num_detected ++;
}
while ($num_detected!=0){
$id_xml_product=$Products->Product['Id'];
$product_url=$Products->Url;
$capacity=$Products->Product['capacity'];
;
$requete_product = mysql_query("INSERT INTO product(idProduct, id_xml_product,product_idAccomodation,capacity,product_url)
VALUES ( '$idProduct', '$idAccomodation', '$photo_type', '$photo_url')";) }


// Création d'un objet nomme
if ($Products->name_fr!=0){
$idlangues=1;
$name=$Products->name_fr;
$requete_nomme = mysql_query("INSERT INTO nomme(idProduct,idlangues,name)
VALUES ( '$idProduct', '$idlangues', $name)";)}

if ($Products->name_fr!=0){
$idlangues=2;
$name=$Products->name_gb;
$requete_nomme = mysql_query("INSERT INTO nomme(idProduct,idlangues,name)
VALUES ( '$idProduct', '$idlangues', $name)";)}

if ($Products->name_fr!=0){
$idlangues=3;
$name=$Products->name_de;
$requete_nomme = mysql_query("INSERT INTO nomme(idProduct,idlangues,name)
VALUES ( '$idProduct', '$idlangues', $name)";)}

if ($Products->name_fr!=0){
$idlangues=4;
$name=$Products->name_du;
$requete_nomme = mysql_query("INSERT INTO nomme(idProduct,idlangues,name)
VALUES ( '$idProduct', '$idlangues', $name)";)}

if ($Products->name_fr!=0){
$idlangues=5;
$name=$Products->name_it;
$requete_nomme = mysql_query("INSERT INTO nomme(idProduct,idlangues,name)
VALUES ( '$idProduct', '$idlangues', $name)";)}






// Création d'un objet period
$idperiod=0;
do{ $idperiod++;
$result=mysql_query("SELECT * FROM product WHERE idperiod=$idperiod;");
$num_detected=0;
if($row=mysql_fetch_array($result,MYSQL_ASSOC)) num_detected ++;
}
while ($num_detected!=0){
$duration=$Products->Product->Dates->Date['Duration'];
$period_begin=$Products->Product->Dates->Date['Begin'];
$period_end=$Products->Product->Dates->Date['End'];
$duration_min=$Products->Product->Dates->Date['Min'];
$duration_max=$Products->Product->Dates->Date['Max'];
$period_idPrice=$idPrice;
$requete_period = mysql_query("INSERT INTO product(idperiod, period_idPrice,period_begin,period_end,duration,duration_min,duration_max)
VALUES ( '$idperiod', '$period_idPrice', '$period_begin', '$period_end','$duration','$duration_min','$duration_max')";)
}

//Création d'un objet price
$idPrice=0;
do{ $idPrice++;
$result=mysql_query("SELECT * FROM product WHERE idPrice=$idPrice;");
$num_detected=0;
if($row=mysql_fetch_array($result,MYSQL_ASSOC)) num_detected ++;
}
while ($num_detected!=0){
$fixe=$Products->Product->Dates->Date['Fixe'];
$board=$Products->Product->Dates->Date['Board'];
$discount=$Products->Product->Dates->Date['Discount'];
$by_pers=$Products->Product->Dates->Date['ByPers'];
$Price_euros=$Products->Product->Dates->Date['PriceEuro'];
$requete_price = mysql_query("INSERT INTO price(idPrice, Price_euros,fixe,board,discount,by_pers)
VALUES ('$idPrice','$Price_euros','$fixe','$board','$discount','$by_pers')";)
}

//Création d'un objet est_dispo
$quantity=$Accomodation->Dates->Date['Quantity'];
$requete_period = mysql_query("INSERT INTO est_dispo(idProduct,idperiod,quantity)
VALUES ( '$idProduct','$idperiod','$quantity')";)


//Création de l'objet coute
$requete_coute=mysql_query("INSERT INTO coute(idProduct,idPrice)
VALUES ( '$idProduct','$idPrice')";)
}





}}}

}
//test requete
$cnx = mysql_connect( "localhost", "root", "admin" ) ;
$db = mysql_select_db( "mydb3" );
$requete = mysql_query($requete_accomodation, $cnx) or die( mysql_error() ) ;
if($requete)
{
echo("L'insertion a été correctement effectuée") ;
}
else
{
echo("L'insertion à échouée") ;
}



}

?>


Merci d'avance
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
2
Bonjour,

J'ai essayé sous un serveur lampp de linux et cela fonctionne puisque il affiche les erreurs que renvoient le parseur. J'ai ainsi pu corriger certaines erreurs, mais il y en a une que je ne comprend pas. Il m'indique :
Parse error: syntax error, unexpected '{',expecting';' in ... on line 38 c'est à dire là ou j'effectue :
while ($num_detected!=0) {

Quelqu'un peut me dire pourquoi ?

Merci
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
2 >
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009

Bonjour,

J'ai réussi à débugger ma page php sous linux mais je n'arrive pas à récupérer le fichier pour vous le montrer au propre. Quand je l'ouvre sous windows il affiche des caractères "chinois".
J'ai donc continué mes test sous linux. Cependant même après avoir récupéré la même base que sous linux (dont j'ai compris qu'il fallait le faire à cause de l'erreur query was empty) celle ci ne se remplit pas après la lecture de la page php.
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
463 >
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009

Salut,

Enregistre ta page dans un autre format sinon. Par exemple, met là en format texte.

Ton problème de caractères viens peut-être de l'encodage...
Messages postés
79
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
29 janvier 2009
2
Bonjour,

En fait c'était un problème de carte sd qui ne marchait pas bien. J'ai récupéré le fichier ac une clé usb et ça marche. Je me suis résigné à développer sous linux ac lampp parce que ça fonctionne mais pas sous windows ac wamp.
Le problème est donc résolu par contre j'ai posé une autre question concernant une requête sql.

Merci pour votre temps.
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
463
Sinon y'a aussi EasyPHP....

Cordialement