par
Cyrano » 24 août 2005, 19:05
De toutes façon, tu ne fais pas le test sur la bonne fonction: ociparse analyse la requête mais ne l'exécute pas. Il faudrait que tu définisses une variable avec la ligne suivante (ociexecute()) et que tu fasses le test dessus pour afficher ton message. Mais tu n'exécute cette ligne que si la première ne retourne pas FALSE. Je ne connais pas bien les commandes avec oracle, mais le code devrait ressembler à quelque chose dans ce goût là:
<?
//On se connecte a la base oracle
$connect = ocilogon("xxx", "xxx", "xxx");
//On parse la requête à effectuer sans oublier de lui passer la chaine de connexion en paramêtre
$stmt = ociparse($connect, "ma_requete");
if(false !== $stmt)
{
//On execute la requête en lui passant l'option OCI_DEFAULT
$execution = ociexecute($stmt,OCI_DEFAULT);
//On parcourt les résultats et on affiche les champs
while (ocifetch($execution))
{
$result = ociresult($execution,1);
}
}
//On se deconnecte de la base oracle
ocilogoff($connect);
?>
<html>
<head>
<title>Recherche du numéro de commande grâce au numéro de facture</title>
</head>
<body>
<h1>Resultat</h1>
Voici le résultat demandé.
<?php
if ($stmt && $execution)
{
?>
<p>Le numéro de commande est : <? echo $result; ?></p>
<?php
}
else
{
?>
<p>Votre numéro de facture ne correspondant à aucun numéro de commande.</p>
<?php
}
?>
</body>
</html>
Sous réserves.
De toutes façon, tu ne fais pas le test sur la bonne fonction: ociparse analyse la requête mais ne l'exécute pas. Il faudrait que tu définisses une variable avec la ligne suivante (ociexecute()) et que tu fasses le test dessus pour afficher ton message. Mais tu n'exécute cette ligne que si la première ne retourne pas FALSE. Je ne connais pas bien les commandes avec oracle, mais le code devrait ressembler à quelque chose dans ce goût là:
[php]<?
//On se connecte a la base oracle
$connect = ocilogon("xxx", "xxx", "xxx");
//On parse la requête à effectuer sans oublier de lui passer la chaine de connexion en paramêtre
$stmt = ociparse($connect, "ma_requete");
if(false !== $stmt)
{
//On execute la requête en lui passant l'option OCI_DEFAULT
$execution = ociexecute($stmt,OCI_DEFAULT);
//On parcourt les résultats et on affiche les champs
while (ocifetch($execution))
{
$result = ociresult($execution,1);
}
}
//On se deconnecte de la base oracle
ocilogoff($connect);
?>
<html>
<head>
<title>Recherche du numéro de commande grâce au numéro de facture</title>
</head>
<body>
<h1>Resultat</h1>
Voici le résultat demandé.
<?php
if ($stmt && $execution)
{
?>
<p>Le numéro de commande est : <? echo $result; ?></p>
<?php
}
else
{
?>
<p>Votre numéro de facture ne correspondant à aucun numéro de commande.</p>
<?php
}
?>
</body>
</html>[/php]
Sous réserves.