Résolu Oracle et PHP

Solutions (9)
Tags :
  • Php
  • Programmation
|
Bonjour, ou plutôt bonsoir même ! :ange: 

Je bloque sur un problème idiot je pense. Mais ça fait un bon moment que je tourne en rond sur Google, et à moins que je m'y prenne mal, je n'ai toujours pas trouvé de réponse à mon soucis :

J'utilise WampServer et j'aimerai avec ce dernier donc, utiliser une base de données d'Oracle. En clair, j'ai mon serveur d'un côté et mon fichier .sql de l'autre. Comment l'inclure à WampServer ? Pour ensuite l'utiliser à ma guise dans mes pages .php ?

Ce n'est peut-être pas comme ça qu'il faut s'y prendre aussi pour se servir d'Oracle sur WampServer, ça ne m'étonnerait pas que je n'ai pas compris le fonctionnement :whistle: 

Si vous pouviez m'éclairer s'il vous plaît :) 
Contenus similaires
Meilleure solution
partage
, Modérateur |
Salut,

C'est plutôt simple à utiliser Oracle avec PHP, tout est déjà prévu pour.
Tu peux suivre les informations ici : http://php.net/oracle
Mis à part j'imagine un peu de configuration à faire pour activer oracle dans PHP, après le principe est le même que pour tous les autres fournisseurs de base de données.
Au lieu d'avoir par exemple mysql_query(), tu as oci_query(); au lieu de mysql_fetch_array(), tu as oci_fetch_array(). Bref, si tu as déjà quelques connaissances en bases de données avec PHP, c'est exactement la même chose que les autres, avec oci_ à la place de mysql_
  • Commenter cette solution |
Score
0
òh
òi
, Modérateur |
Alors, vu que mysql_query() retourne FALSE s'il y a une erreur, c'est possible qu'il y ait un problème avec ta requête $query = 'select ID_ITEM, NOM from PH_ITEMS where ITEM_PERE is null order by ORDRE';
Ajouter un or die(mysql_error()); après $reponse = mysql_query($query,$this->conn)
  • Commenter cette réponse |
Score
0
òh
òi
|
[Ah ah, est ce que je peux continuer de poster sur ce sujet même si il est résolu ? =/ ]

Bon alors, sur WampServer aucun soucis. La base MySQL fonctionne bien ! Mais ça ne m'affichait pas correctement mon site (comme si il ne prenait pas en compte le CSS je pense)

Bref, j'ai décidé de tout héberger sur un site, en passant par AlwaysData. (Plus simple pour travailler en groupe sur le projet en plus)
J'ai réussi à importer ma base de données, j'ai modifié le "mysql_connect" du coup.

Mais... (parce qu'il y a un "mais" évidemment ><), une fois sur mon site, j'obtiens l'erreur suivante :

Citation :
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/... on line 16


Et cette erreur correspond à cette partie du code :

  1. $mitems = new MItems ();
  2. $items = $mitems->Select_item ();
  3.  
  4. $msous_items = new MItems();
  5. $options = '';
  6. while ($val = mysql_fetch_array($items, MYSQL_ASSOC))
  7. {
  8.  
  9. $options .= '<li><a class="ITEM" href="../Php/appli.php?EX=liste&ID_ITEM=' . $val['ID_ITEM'] . '">' . $val['NOM'] . '</a></li>';
  10.  
  11. $sous_items = $msous_items->Select_sitems($val['ID_ITEM']);
  12. while ($sval = mysql_fetch_assoc($sous_items)or die(mysql_error()) )
  13. {
  14. $options .= '<li><a class="RUBRIQUE" href="../Php/appli.php?EX=liste&ID_ITEM=' . $sval['ID_ITEM'] . '">' . $sval['NOM'] . '</a></li>';
  15. }
  16.  
  17. $options .= '<br>';
  18. }


Et la classe MItems ressemble à :

  1. class MItems
  2. {
  3. private $conn;
  4. private $the_values;
  5.  
  6. // constructeur
  7. function __construct ()
  8. {
  9. $this->conn = mysql_connect("mysql.alwaysdata.com", "user", "mdp") or die('Erreur de connection au serveur : '.mysql_error());
  10. mysql_select_db("che44_items",$this->conn);
  11.  
  12. } // __construct ()
  13.  
  14. // destructeur
  15. function __destruct ()
  16. {
  17. mysql_close($this->conn) or die('Erreur de deconnection au serveur : '.mysql_error());
  18. } // __destruct()
  19.  
  20. // selection multi tuples
  21. function Select_item()
  22. {
  23. $query = 'select ID_ITEM, NOM from PH_ITEMS where ITEM_PERE is null order by ORDRE';
  24.  
  25. unset ($this->the_values);
  26. $reponse = mysql_query($query,$this->conn);
  27. return $reponse;
  28.  
  29. } // Select_item()
  30.  
  31. function Select_sitems($Pere)
  32. {
  33.  
  34. $query = 'select ID_ITEM,NOM from PH_ITEMS where ITEM_PERE = '.$Pere.' order by ORDRE';
  35. unset ($this->the_values);
  36. $reponse = mysql_query($query);
  37.  
  38. return $reponse;
  39. } // Select_all()
  40. }; // class MPhotos
  41.  
  42. ?>


Si quelqu'un a une idée ... Je suis preneuse :ange: 
  • Commenter cette réponse |
Score
0
òh
òi
|
Meilleure réponse sélectionnée par Mushoir.
  • Commenter cette réponse |
Score
0
òh
òi
|
Ah mais ceux qui m'aident en Programmation, je leur voue un culte de toute façon, d'où le vous :D 

Merci pour ton aide, je pense oui en effet que je reviendrai poser quelques questions rapidement ^^ Enfin, en relisant à deux fois mon code avant de poster bêtement ! ;) 
  • Commenter cette réponse |
Score
0
òh
òi
, Modérateur |
Oula, tu peux me tutoyer, j'ai pas 70 ans :D 
Puis, n'hésites pas si t'as besoin de plus d'aide
  • Commenter cette réponse |
Score
0
òh
òi
|
... J'ai honte. :ange:  Je m'acharnais sur ces pauvres petits paramètres, alors que je m'étais plantée de fonction >< Forcément ça ne pouvait pas marcher ...

Merci beaucoup en tout cas ! Vous me sauvez :D 
Bizarrement ... ça marche :lol: 
  • Commenter cette réponse |
Score
0
òh
òi
, Modérateur |
C'est parce que tu n'utilises pas la bonne fonction :) 
mysql_query c'est pour faire une requête, pour te connecter, il faut utiliser mysql_connect
  • Commenter cette réponse |
Score
0
òh
òi
|
Merci pour la réponse déjà :) 
Je suis en train de regarder le lien ;) 

En fait, je travaille sur différentes machines (l'une à l'IUT, qui est équipée d'Oracle donc tout va bien, tout fonctionne correctement. Et l'autre, donc chez moi avec laquelle je n'arrive pas à accéder à ma base de données Oracle).


Mais entre temps, j'ai une question :
J'essaie d'utiliser MySQL. (directement installé avec WampServer, j'ai cru me simplifier la vie en apprenant à m'en servir mais au final je bloque bêtement dès le début). En effet :
Citation :
$liaison = mysql_query("localhost", "root", "");


Cette simple connexion ne fonctionne pas, puisque j'obtiens l'erreur suivante :
Citation :
Warning: mysql_query() expects at most 2 parameters, 3 given in C:\wamp\www\.... on line 4
(donc bien la ligne ci dessus)

Sur tous les sites que j'ai trouvé, ils apprennent à se connecter de cette façon. J'ai vérifié, le nom de mon serveur sur Wamp est bien "localhost".
Que faire ? =/ Enfin si vous avez une idée ...
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS