Problème export de fichier XML avec php

coco77777 Messages postés 79 Statut Membre -  
 MiniPouce -
Bonjour,

J'ai un souci pour exporter mon BDD en fichier XML avec php.
voici les codes:

<?php
// une connexion vers la base mysql

require("connect.php");

try{
$connexion=new PDO('mysql:host=localhost;dbname=films', 'Gap', 'coco', $pdo_options);
}
catch(PDOException $e){
printf("Échec de la connexion : %s\n", $e->getMessage());
exit();
}

// Ecrire une requête ($q) pour récupérer les données de la table

$sql_requete ="SELECT titre_original, realisateur, pays FROM films";
$result = mysql_query($sql_requete);

?>

<?php

$xml = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>'
.'<?xml-stylesheet type="text/xsl" href="films.xsl"?>'
.'<films>';
while ($row = mysql_fetch_array($result)) {

$xml .= '<films>';
$xml .= '<titre_original>'.$row['titre_original'].'</titre_original>';
$xml .= '<realisateur>'.$row['realisateur'].'</realisateur>';
$xml .= '<pays>'.$row['pays'].'</pays>';
$xml .= '</films>';
}
$xml .= '</films>';
$fp = fopen("export.xml", 'w+');
fputs($fp, $xml);
fclose($fp);
echo 'Export XML effectue !<br><a href="export.xml">Voir le fichier</a>';

Voici les eureurs que cela m'affiche:

( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\Projet_Mini_Projet\export.php on line 27
Call Stack
# Time Memory Function Location
1 0.0010 373056 {main}( ) ..\export.php:0
2 0.0272 392080 mysql_fetch_array ( ) ..\export.php:27
Export XML effectue !
Voir le fichier

Erreur lors du chargement de la feuille de style : Une erreur réseau s'est produite lors du chargement d'une feuille de style XSLT :http://127.0.0.1/Projet_Mini_Projet/films.xsl

Si quelqu'un peut m'aider cela sera très gentil de votre part. Je débute en informatique et j'ai vraiment besoin de votre aide.
Merci d'avance

Amicalement

3 réponses

  1. Utilisateur anonyme
     
    Bonjour

    $connexion=new PDO('mysql...
    $result = mysql_query(...

    Cette erreur est en train de devenir un classique.

    Soit tu utilises PDO
    Soit tu utilises les fonctions "classiques" mysql_...
    Mais pas de mélange !

    De plus, tu as au début de ton script un require("connect.php"); . Qu'y a-t-il dans ce connect.php ? Ça ne ferait pas double emploi avec ton $connexion=new PDO... ?
    0
  2. coco77777 Messages postés 79 Statut Membre
     
    Effectivement... vous avez raison mais je n'ai pas du tout pensé à ça. :S
    Dans mon connect.php il y a le code suivant:

    <?php
    // On se connecte à MySQL
    try
    {
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=films', 'root', 'ruska', $pdo_options);
    }
    catch (Exception $e)
    {
    die('Erreur : ' . $e->getMessage());
    }
    ?>

    Merci beaucoup
    0
  3. MiniPouce
     
    C'est a cause du gidoublouck destiné en code a
    0