Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2313 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Recherche d'un champ sur une base de données Oracle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Recherche d'un champ sur une base de données Oracle

n°722056
lious
Posté le 11-05-2004 à 16:04:05  profilanswer
 

Bonjour à tous
 
J'ai un petit souci: voilà j'ai une base de données Oracle dans laquelle j'ai 4 champs: nom, prénom, age, adresse ainsi que des données. Mon but est d'avoir à faire une recherche suivant un des 4 champs au choix ou plus d'un champ.  
Code:
<?
 
$conn = ociLogon("belkhir","belkhir",'BTEST');
 
$requete = ociparse($conn,"SELECT nom, prenon, age, adresse FROM essai WHERE " );
 
if (isset($_POST['nom_formulaire']) && $_POST['nom_formulaire'] <> "" )
{
   $requete .= " nom LIKE \"".$POST['nom_formulaire']."%\" and ";
}
if (isset($_POST['prenom_formulaire']) && $_POST['prenom_formulaire'] <> "" )
{
   $requete .= " prenom LIKE \"".$POST['nom_formulaire']."%\" and ";
}
if (isset($_POST['age_formulaire']) && $_POST['age_formulaire'] <> "" )
{
   $requete .= " age = ".$POST['nom_formulaire']."%\" and ";
}
if (isset($_POST['adresse_formulaire']) && $_POST['adresse_formulaire'] <> "" )
{
   $requete .= " adresse LIKE \"".$POST['nom_formulaire']."%\" and ";
}
 
$requete .= ";";
 
echo $requete;
 
$result = ociexecute($requete);
 
while ($row = ociFetch($result))
{
  $nom = $row[0];
  $prenom = $row[1];
  $age = $row[2];
  $adresse = $row[3];
  echo "<table><tr><td>$nom</td><td>$prenom</td><td>$age</td><td>$adresse</td>";
}
?>
 
L'erreur est la suivante:
Resource id #5;
Warning: ociexecute(): supplied argument is not a valid OCI8-Statement resource  
Warning: ocifetch(): supplied argument is not a valid OCI8-Statement resource  
$requete .= " nom LIKE \"".$POST['nom_formulaire']."%\" and "  
 
Je désespère.... ;-((( Si vous avez une idée serait possible de me la communiquer svp, merci d'avance....

mood
Publicité
Posté le 11-05-2004 à 16:04:05  profilanswer
 

n°722062
jagstang
Pa Capona ಠ_ಠ
Posté le 11-05-2004 à 16:07:31  profilanswer
 

avec ton truc, la requête fini toujours par AND ;
 
génial. pense à afficher ta requête...

n°722078
lious
Posté le 11-05-2004 à 16:12:38  profilanswer
 

Elle est affichée ma requête par le echo $requete; et au lieu d'afficher il me met la synatxe $requete .= " nom LIKE \"".$POST['nom_formulaire']."%\" and " ...  Le fait de mettre un and permet justement de lier les contraintes.....

n°722080
jagstang
Pa Capona ಠ_ಠ
Posté le 11-05-2004 à 16:13:54  profilanswer
 

oui mais, la dernière tu y a pensé ? y'a pas de AND après...

n°722095
lious
Posté le 11-05-2004 à 16:18:20  profilanswer
 

Oui je l'ai enlevé mais sans succès....

n°722105
jagstang
Pa Capona ಠ_ಠ
Posté le 11-05-2004 à 16:21:19  profilanswer
 

modifies tes quotes \" par '
 
$requete .= " nom LIKE \"".$POST['nom_formulaire']."%\" and ";  
 
par
 
$requete .= " nom LIKE '".$POST['nom_formulaire']."%' and ";  
 
partout ça va de soit


Message édité par jagstang le 11-05-2004 à 16:21:36

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Recherche d'un champ sur une base de données Oracle

 

Sujets relatifs
initialisation d'une base de données OracleAccéder à une base Access à partir de Linux
Recherche de string ds un bloc mémoire sans type[ACCESS] Conflit d'écriture ACCESS <-> ORACLE
[Oracle] Importation de données d'un fichier CSV[C#] Recherche moteur SMTP, et conseil pour intégration dans un prog
Pb de recherche dans un fichier[mysql] Creation base et grant
Plus de sujets relatifs à : Recherche d'un champ sur une base de données Oracle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR