Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2011, 14h38   #1
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Par défaut Requete sur Acces en Php

Bonjour

Je fais une requete sur une table Access dans une appli en Php :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$table="Regions";
$Reg = $_GET['$Reg']; 
//On affiche la region
$requete = "SELECT * FROM $table WHERE Nom='$Reg'";  // Selectionne la region
$resultat = $conn->execute($requete); // execute la requete
$image = $resultat->Fields(2);        // carte de la region
$descro= $resultat->Fields(5);        // descriptif de la region
$titre= $resultat->Fields(4);        // titre de la region
while(!$resultat->EOF)  // tant que pas le fichier n'est pas terminé
{
echo "<h3 style=\"color: #0000FF;\">".$titre->value."</h3>";
echo"<img alt=\" \" src=\"img/".$image."\"/>";
echo "<p style=\"text-align: left;\">".$descro->value."</p>";
$resultat->MoveNext(); // enregistrement suivant
}
$resultat->Close(); // ferme la requete
$conn->Close(); // ferme la connection
?>
Comment je peux ajouter une condition If-End if si l'enregistrment est null ?

Merci pour vosréponses
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 15h21   #2
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 178
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 178
Points : 2 807
Points : 2 807
Bonjour Vanessa48,

Ta requête est :
Code sql :
SELECT * FROM $table WHERE Nom='$Reg'

Citation:
Envoyé par Vanessa48
Comment je peux ajouter une condition If-End if si l'enregistrment est null ?
==> essayes :
Code sql :
SELECT * FROM $table WHERE Nom='$Reg' and Nom is not null
==> syntaxe Access.

Pour l'emploi du "If Then Else" à l'intérieur de ton code PHP, je t'invite à poster du côté du forum... PHP.

En aparté, est-il bien normal qu'il existe des régions sans nom ?...
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 20h52   #3
Expert Confirmé
 
Avatar de vodiem
 
Homme Diem VO
Vivre
Inscription : avril 2006
Messages : 2 644
Détails du profil
Informations personnelles :
Nom : Homme Diem VO
Âge : 40
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Vivre
Secteur : Conseil

Informations forums :
Inscription : avril 2006
Messages : 2 644
Points : 3 895
Points : 3 895
salut Vanessa48 et Richard_35,

Citation:
Envoyé par Richard_35
Code SQL :
SELECT * FROM $table WHERE Nom='$Reg' AND Nom IS NOT NULL
permet moi Richard_35, cela me parait pas utile:
si $table permet à Nom d'être null alors WHERE Nom='' ne renverra jamais de Nom null donc inutile d'avoir "and is not null".


Citation:
Envoyé par Vanessa48
si l'enregistrment est null
tu veux bien dire qu'il n'y a aucun résultat retourné?
si eof n'est pas levé et que l'objet résultat n'est pas défini, regarde isset() (PHP).
sinon un compte sur les enregistrements retourné mais regarde comme te la conseillé Richard_35 du côté PHP tu auras des réponses plus pertinentes.
vodiem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 10h18   #4
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 178
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 178
Points : 2 807
Points : 2 807
Bonjour Vodiem et Vanessa48,

Citation:
Envoyé par Vodiem
si $table permet à Nom d'être null alors WHERE Nom='' ne renverra jamais de Nom null donc inutile d'avoir "and is not null".
==> eh bien, sauf si $Reg est NULL. Néanmoins, ta remarque est judicieuse, mais je ne sais pas ce que Vanessa48 (qui semble ne pas être une débutante) veut faire et je ne me suis pas attardé sur la pertinence du test en question.

Notes que ta remarque est valable, que le test soit dans la requête SQL ou dans un "If... Then... Else" entre le "While... {" et le "...}" (si j'ai bien compris ce petit bout de code PHP).
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/09/2011, 19h15   #5
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour, ( Vodiem)

à la place de ...
Code php :
1
2
3
$image = $resultat->Fields(2);        // carte de la region
$descro= $resultat->Fields(5);        // descriptif de la region
$titre= $resultat->Fields(4);        // titre de la region
je mettrai ...
Code php :
1
2
3
$image = $resultat->Fields[2];        // carte de la region
$descro= $resultat->Fields[5];        // descriptif de la region
$titre= $resultat->Fields[4];        // titre de la region
et de préférence dans la boucle while :
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$table="Regions";
$Reg = $_GET['$Reg']; 
//On affiche la région
$requete = "SELECT * FROM $table WHERE Nom='$Reg'";  // Sélectionne la région
$resultat = $conn->execute($requete); // exécute la requête
while(!$resultat->EOF)  // tant qu'on est pas à la fin du jeu d'enregistrements
{
    $image = $resultat->Fields[2];        // carte de la région
    $descro= $resultat->Fields[5];        // descriptif de la région
    $titre=  $resultat->Fields[4];        // titre de la région
    echo "<h3 style=\"color: #0000FF;\">".$titre->Value."</h3>";
    echo"<img alt=\" \" src=\"img/".$image."\"/>";
    echo "<p style=\"text-align: left;\">".$descro->Value."</p>";
    $resultat->MoveNext(); // enregistrement suivant
}
$resultat->Close(); // ferme la requête
$conn->Close(); // ferme la connexion
?>
Si tu ne t'intéresses qu'au premier enregistrement remplace while par if et supprime $resultat->MoveNext().

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h17.


 
 
 
 
Partenaires

Hébergement Web