php de mysql a oracle

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : php de mysql a oracle

Re: php de mysql a oracle

par Ryle » 04 sept. 2011, 21:31

Tu as également une ` qui traîne dans une requête alors que c'est du spécifique mysql...

Re: php de mysql a oracle

par moogli » 04 sept. 2011, 20:36

c'est pas oci_fetch_assoc($rech_regions) mais =oci_fetch_assoc($sql1) compare avec la doc !
http://php.net/manual/fr/function.oci-fetch-assoc.php

@+

Re: php de mysql a oracle

par xTG » 04 sept. 2011, 20:34

La fonction de connexion n'est pas testée, tu n'as peut être tout simplement pas ouvert correctement le lien vers la bdd.
Ou bien la fonction oci_parse() qui échoue (que tu ne testes pas non plus).

Fais des tests à plusieurs endroits avec la fonction oci_error() pour avoir du neuf.
Car là sans boule de cristal ça va pas être facile. ^^

Edit: bien vu l'aveugle. =D>

php de mysql a oracle

par msi79 » 04 sept. 2011, 19:07

salut voici un code en php-mysql que je veux en php-oracle.
j'ai des erreur alors pouvez-vous m'ader a les corriger .
voici l'erreur affichée :
Notice: Undefined index: id_region in C:\wamp\www\testEmploi2\index.php on line 87

Notice: Undefined index: region in C:\wamp\www\testEmploi2\index.php on line 88

Notice: Undefined index: id_region in C:\wamp\www\testEmploi2\index.php on line 87

Notice: Undefined index: region in C:\wamp\www\testEmploi2\index.php on line 88

Notice: Undefined index: id_region in C:\wamp\www\testEmploi2\index.php on line 87

Notice: Undefined index: region in C:\wamp\www\testEmploi2\index.php on line 88

Notice: Undefined index: id_region in C:\wamp\www\testEmploi2\index.php on line 87

Notice: Undefined index: region in C:\wamp\www\testEmploi2\index.php on line 88


voici le code en php-mysql :

Code : Tout sélectionner

<?php echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); /* Variables de connexion : ajustez ces paramètres selon votre propre environnement */ $serveur = "localhost"; $admin   = "root"; $mdp     = ""; $base    = "regions"; /* On récupère si elle existe la valeur de la région envoyée par le formulaire */ $idr = isset($_POST['region'])?$_POST['region']:null; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" /> <title>Sélectionner un département selon la région choisie</title> <meta name="description" content="Listes déroulantes dynamiques inter-dépendantes" /> <meta name="keywords" content="" /> <meta name="author" content="Cyrano" /> <meta name="generator" content="Zend Studio Environnement et WebExpert 5" /> <meta http-equiv="imagetoolbar" content="no" /> <meta http-equiv="Pragma" content="no-cache" /> </head> <body style="font-family: verdana, helvetica, sans-serif; font-size: 85%"> <?php if(isset($_POST['ok']) && isset($_POST['departement']) && $_POST['departement'] != "") {     $region_selectionnee = $_POST['region'];     $dept_selectionne = $_POST['departement']; ?> <p>Vous avez sélectionné le département <?php echo($dept_selectionne); ?> dans la région <?php echo($region_selectionnee); ?></p> <?php } ?> <h3>Trouver un département</h3> <?php /* On établit la connexion à MySQL avec mysql_pconnect() plutôt qu'avec mysql_connect() *  car on aura besoin de la connexion un peu plus loin dans le script */ $connexion = mysql_pconnect($serveur, $admin, $mdp); if($connexion != false) {     $choixbase = mysql_select_db($base, $connexion);     $sql1 = "SELECT `id_region`, `region`".     " FROM `region`".     " ORDER BY `id_region`";     $rech_regions = mysql_query($sql1);     $code_region = array();     $region = array();     /* On active un compteur pour les régions */     $nb_regions = 0;     if($rech_regions != false)     {         while($ligne = mysql_fetch_assoc($rech_regions))         {             array_push($code_region, $ligne['id_region']);             array_push($region, $ligne['region']);             /* On incrémente de compteur */             $nb_regions++;         }     }     ?> <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgdept"> <fieldset style="border: 3px double #333399"> <legend>Sélectionnez une région</legend> <select name="region" id="region" onchange="document.forms['chgdept'].submit();">   <option value="-1">- - - Choisissez une région - - -</option>     <?php     for($i = 0; $i < $nb_regions; $i++)     { ?>   <option value="<?php echo($code_region[$i]); ?>"<?php echo((isset($idr) && $idr == $code_region[$i])?" selected=\"selected\"":null); ?>><?php echo($region[$i]); ?></option> <?php     }     ?> </select>     <?php     mysql_free_result($rech_regions);     /* On commence par vérifier si on a envoyé un numéro de région et le cas échéant s'il est différent de -1 */     if(isset($idr) && $idr != -1)     {         /* Cération de la requête pour avoir les départements de cette région */         $sql2 = "SELECT `id_departement`, `departement`".         " FROM `departement`".         " WHERE `id_region` = ". $idr ."".         " ORDER BY `id_departement`;";         if($connexion != false)         {             $rech_dept = mysql_query($sql2, $connexion);             /* Un petit compteur pour les départements */             $nd = 0;             /* On crée deux tableaux pour les numéros et les noms des départements */             $code_dept = array();             $nom_dept = array();             /* On va mettre les numéros et noms des départements dans les deux tableaux */             while($ligne_dept = mysql_fetch_assoc($rech_dept))             {                 array_push($code_dept, $ligne_dept['id_departement']);                 array_push($nom_dept, $ligne_dept['departement']);                 $nd++;             }             /* Maintenant on peut construire la liste déroulante */             ?> <select name="departement" id="departement">             <?php               for($d = 0; $d<$nd; $d++)             {                 ?>   <option value="<?php echo($code_dept[$d]); ?>"<?php echo((isset($dept_selectionne) && $dept_selectionne == $code_dept[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_dept[$d]." (". $code_dept[$d] .")"); ?></option>                 <?php             } ?> </select> <?php         }         /* Un petit coup de balai */         mysql_free_result($rech_dept);     } ?> <br /><input type="submit" name="ok" id="ok" value="Envoyer" /> </fieldset> </form> <?php     /* Terminé, on ferme la connexion */     mysql_close($connexion); } else {     /* Si on arrive là, c'est pas bon signe, il faut vérifier les      * paramètres de connexion, mot de passe, serveur pas démarré etc... */ ?> <p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p> <?php } ?> </body> </html>
et le code que j'essaie d'obtenir en php-oracle :

Code : Tout sélectionner

<?php //http://forum.phpfrance.com/faq-tutoriels/formulaires-listes-deroulantes-dynamiques-liees-t4562.html echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); /* Variables de connexion : ajustez ces paramètres selon votre propre environnement */ $conn = oci_connect("zana", "cool75sool", '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcldb) (INSTANCE_NAME = orcldb) (GLOBAL_NAME = orcldb) ))'); /* On récupère si elle existe la valeur de la région envoyée par le formulaire */ $idr = isset($_POST['region'])?$_POST['region']:null; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" /> <title>Sélectionner un département selon la région choisie</title> <meta name="description" content="Listes déroulantes dynamiques inter-dépendantes" /> <meta name="keywords" content="" /> <meta name="author" content="Cyrano" /> <meta name="generator" content="Zend Studio Environnement et WebExpert 5" /> <meta http-equiv="imagetoolbar" content="no" /> <meta http-equiv="Pragma" content="no-cache" /> </head> <body style="font-family: verdana, helvetica, sans-serif; font-size: 85%"> <h3>Version 100% PHP</h3> <p>Vous constaterez qu'il y a un délai de latence entre la sélection et la mise à jour.</p> <?php if(isset($_POST['ok']) && isset($_POST['departement']) && $_POST['departement'] != "") {     $region_selectionnee = $_POST['region'];     $dept_selectionne = $_POST['departement']; ?> <p>Vous avez sélectionné le département <?php echo($dept_selectionne); ?> dans la région <?php echo($region_selectionnee); ?></p> <?php } ?> <h3>Trouver un département</h3> <?php /* On établit la connexion à MySQL avec mysql_pconnect() plutôt qu'avec mysql_connect() *  car on aura besoin de la connexion un peu plus loin dans le script */ //$connexion = mysql_pconnect($serveur, $admin, $mdp); $conn = oci_connect("zana", "cool75sool", '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcldb) (INSTANCE_NAME = orcldb) (GLOBAL_NAME = orcldb) ))'); if($conn != false) {     //$choixbase = oci_select_db($base, $connexion);         //$sql1=oci_parse($conn,"SELECT `id_region`, `region`"." FROM `region`". " ORDER BY `id_region`";);     $sql1=oci_parse($conn,"SELECT id_region, region FROM region ");               $rech_regions = oci_execute($sql1);     //$rech_regions = mysql_query($sql1);     $code_region = array();     $region = array();     /* On active un compteur pour les régions */     $nb_regions = 0;     if($rech_regions != false)     {         //while($ligne =oci_fetch_assoc($rech_regions))         while($ligne =oci_fetch_assoc($rech_regions))                  {             array_push($code_region, $ligne['id_region']);             array_push($region, $ligne['region']);             /* On incrémente de compteur */             $nb_regions++;         }     }     ?> <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgdept"> <fieldset style="border: 3px double #333399"> <legend>Sélectionnez une région</legend> <select name="region" id="region" onchange="document.forms['chgdept'].submit();">   <option value="-1">- - - Choisissez une région - - -</option>     <?php     for($i = 0; $i < $nb_regions; $i++)     { ?>   <option value="<?php echo($code_region[$i]); ?>" selected="selected"<?php echo((isset($idr) && $idr == $code_region[$i])?" selected=\"selected\"":null); ?>><?php echo($region[$i]); ?></option> <?php     }     ?> </select>     <?php     //oci_free_statement($rech_regions);     /* On commence par vérifier si on a envoyé un numéro de région et le cas échéant s'il est différent de -1 */     if(isset($idr) && $idr != -1)     {         /* Cération de la requête pour avoir les départements de cette région */         $sql2=oci_parse($conn, "SELECT id_departement, epartement FROM `departement WHERE id_region = ". $idr ."". " ORDER BY id_departement");                  if($conn != false)         {            $rech_dept = oci_execute($sql2,$conn);             /* Un petit compteur pour les départements */             $nd = 0;             /* On crée deux tableaux pour les numéros et les noms des départements */             $code_dept = array();             $nom_dept = array();             /* On va mettre les numéros et noms des départements dans les deux tableaux */             while($ligne_dept = oci_fetch_assoc($rech_dept))             {                 array_push($code_dept, $ligne_dept['id_departement']);                 array_push($nom_dept, $ligne_dept['departement']);                 $nd++;             }             /* Maintenant on peut construire la liste déroulante */             ?> <select name="departement" id="departement">             <?php               for($d = 0; $d<$nd; $d++)             {                 ?>   <option value="<?php echo($code_dept[$d]); ?>"<?php echo((isset($dept_selectionne) && $dept_selectionne == $code_dept[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_dept[$d]." (". $code_dept[$d] .")"); ?></option>                 <?php             } ?> </select> <?php         }         /* Un petit coup de balai */         oci_free_result($rech_dept);     } ?> <br /><input type="submit" name="ok" id="ok" value="Envoyer" /> </fieldset> </form> <?php     /* Terminé, on ferme la connexion */   oci_close($conn); } else {     /* Si on arrive là, c'est pas bon signe, il faut vérifier les      * paramètres de connexion, mot de passe, serveur pas démarré etc... */ ?> <p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p> <?php } ?> <p><a href="./index2.php" title="Aller vers la version JavaScript">Aller vers la version JavaScript</a></p> </body> </html>