Probleme d'affichage des photos PHP Mysql
Fermé
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
-
Modifié par jordane45 le 13/06/2015 à 23:47
jordane45 Messages postés 38315 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 novembre 2024 - 16 juin 2015 à 19:06
jordane45 Messages postés 38315 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 novembre 2024 - 16 juin 2015 à 19:06
A voir également:
- Probleme d'affichage des photos PHP Mysql
- Comment partager des photos - Guide
- Toutes mes photos - Guide
- Easy php - Télécharger - Divers Web & Internet
- Affichage double ecran - Guide
- Partager des photos avec google - Guide
9 réponses
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
13 juin 2015 à 23:49
13 juin 2015 à 23:49
Bonjour,
Peux tu m'expliquer quelle est la différence entre :
"je besoin de affiche les photos de chaque utilisateur !! "
et
" il affiche tous les images de tout les utilisateurs !! "
... pour moi .. cela signifie la même chose.
Peux tu m'expliquer quelle est la différence entre :
"je besoin de affiche les photos de chaque utilisateur !! "
et
" il affiche tous les images de tout les utilisateurs !! "
... pour moi .. cela signifie la même chose.
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
Modifié par jordane45 le 14/06/2015 à 01:16
Modifié par jordane45 le 14/06/2015 à 01:16
Donc .. tu veux afficher uniquement les images de l'utilisateur connecté ?
Pour commencer.. il faudrait que l'on sache comment tu connais quel utilisateur est connecté à ton site ...
peut être as tu stocké dans une variable de SESSION cette information ?
Si oui.. il faudrait nous indiquer laquelle....
Ensuite.. une fois cette variable connue.. il suffit de modifier tes requête en y ajoutant une clause WHERE sur ce critère...
par exemple :
Cordialement,
Jordane
Pour commencer.. il faudrait que l'on sache comment tu connais quel utilisateur est connecté à ton site ...
peut être as tu stocké dans une variable de SESSION cette information ?
Si oui.. il faudrait nous indiquer laquelle....
Ensuite.. une fois cette variable connue.. il suffit de modifier tes requête en y ajoutant une clause WHERE sur ce critère...
par exemple :
$idUser = isset($_SESSION['id_user'])?$_SESSION['id_user']:NULL; if($idUser){ $sql1 = "SELECT info.nom , info.lien FROM info I LEFT JOIN users U ON U.id = I.possesseur WHERE U.id = '$idUser'"; $req = mysql_query($sql1) or die("Erreur dans la requete :".$sql1 . "<br>Erreur :<br>".mysql_error()); }
Cordialement,
Jordane
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
14 juin 2015 à 02:54
14 juin 2015 à 02:54
la session utilise
$_SESSION['email'] = $email;
apropos de ca
$nbr = mysql_query("SELECT count(info.nom) FROM info,users where info.possesseur = users.id");
aucune modification !!
$_SESSION['email'] = $email;
apropos de ca
$nbr = mysql_query("SELECT count(info.nom) FROM info,users where info.possesseur = users.id");
aucune modification !!
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
Modifié par jordane45 le 14/06/2015 à 03:07
Modifié par jordane45 le 14/06/2015 à 03:07
la session utilise
$_SESSION['email'] = $email;
Dans ce cas :
$email= isset($_SESSION['email'])?$_SESSION['email']:NULL; if($idUser){ $sql1 = "SELECT info.nom , info.lien FROM info I LEFT JOIN users U ON U.id = I.possesseur WHERE U.email = '$email'"; $req = mysql_query($sql1) or die("Erreur dans la requete :".$sql1 . "<br>Erreur :<br>".mysql_error()); }
$nbr = mysql_query("SELECT count(info.nom) FROM info,users where info.possesseur = users.id");
aucune modification !!
Si bien sûr ....
mais je pensais qu'en t'inspirant de mon exemple tu réussirais à le faire toi même...
Et puis .. je n'en vois pas bien l'utilité dans ton code...puisque tu ne l'utilise, visiblement, que pour faire ta boucle....
Pourquoi ne pas mettre tout le traitement dans le while directement ?
(il me semble que quelqu'un te l'avait conseillé dans une autre de tes questions....)
ce qui donnerait :
$nbcol=4; $i=0; echo '<table>'; while ($donnees = mysql_fetch_array($req)) { $lien=$donnees['lien']; $nom=$donnees['nom']; if($i%$nbcol==0){ echo '<tr>'; } echo "<td > <a href='$lien' target='_blank' > <img src='$lien' height='115' width='235' alt='$nom' href='$lien'> </a> </td>"; if($i%$nbcol==($nbcol-1)){ echo "</tr>"; } //on incrémente i $i++; } echo '</table>';
(et donc.. avec ce code.. plus besoin de ta seconde requête )
Cordialement,
Jordane
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
15 juin 2015 à 03:42
15 juin 2015 à 03:42
Merci BCP mon frere mais il ya un probleme
le code affiche les images de chaque utilasteur mais affiche chaque images 6 fois ??
le code affiche les images de chaque utilasteur mais affiche chaque images 6 fois ??
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
15 juin 2015 à 08:42
15 juin 2015 à 08:42
Le souci est peut être au niveau de la requête ou de ce que contient ta BDD....
Peux tu prendre la requête et la tester DIRECTEMENT dans ta BDD (c'est à dire via phpmuadmin par exemple)et me dire ce que ça te donne ?
Peux tu prendre la requête et la tester DIRECTEMENT dans ta BDD (c'est à dire via phpmuadmin par exemple)et me dire ce que ça te donne ?
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
Modifié par jordane45 le 16/06/2015 à 11:24
Modifié par jordane45 le 16/06/2015 à 11:24
j'ai utilise aussi ce code (votre code mais avec pdo) mais meme probleme 6 photos !!!!!!!!!!
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
.
try { $bdd = new PDO('mysql:host=localhost;dbname=uploadimageige36','root',''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $reponse = $bdd->query('SELECT * FROM users'); while ($donnees = $reponse->fetch()) { $idUser=$donnees['id']; } if($idUser){ $sql1 = "SELECT info.nom , info.lien FROM info , users WHERE info.possesseur = '$idUser'"; $req = mysql_query($sql1) or die("Erreur dans la requete :".$sql1 . "<br>Erreur :<br>".mysql_error()); } $nbr = mysql_query("SELECT count(*) FROM info where possesseur = possesseur "); $n=mysql_fetch_array($nbr); $arr=array(); while ($donnees = mysql_fetch_array($req)) { $arr[]=$donnees['lien']; $arr2[]=$donnees['nom']; } $nbcol=4; $nbpics = $n[0]; echo "<b><center>Cliqué Sur Une Image Pour L'afficher En Taille Réel</center></b><br>"; if ($nbpics != 0) { echo '<table>'; for ($i=0; $i<$nbpics; $i++){ if($i%$nbcol==0) echo '<tr>'; echo '<td > <a href='.$arr[$i].' target="_blank" ><img src='.$arr[$i].' height=115 width=235 class="" alt="'.$arr2[$i].'" href='.$arr[$i].'></a></td>'; if($i%$nbcol==($nbcol-1)) echo '</tr>'; } echo '</table>'; } else echo '<b>Aucune image à afficher</b>'; echo "<br><br><b>Pour revenir a la page d'aceuil</b> <a href=index.html>Cliquez ici</a>";
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
.
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
>
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
15 juin 2015 à 09:04
15 juin 2015 à 09:04
Tu mélange du PDO et du mysql ?????
Et tu parles de mon code ?? .. là je vois ton ancien code à toi !!!!
De toutes façons.. tu n'as pas répondu à ma question concernant le test de la requête !
Et tu parles de mon code ?? .. là je vois ton ancien code à toi !!!!
De toutes façons.. tu n'as pas répondu à ma question concernant le test de la requête !
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
15 juin 2015 à 09:10
15 juin 2015 à 09:10
Desole , je suis un debutant
comment je fait le test
je connais just de test (SQL)
comment je fait le test
je connais just de test (SQL)
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 11:33
16 juin 2015 à 11:33
Je viens de regarder...
Donc.. la bonne requête à utilsier (avec MON CODE) est :
Et donc ça devrait donner un truc de ce genre :
Donc.. la bonne requête à utilsier (avec MON CODE) est :
SELECT U.prenom ,U.email ,I.nom ,I.lien ,U.nom FROM info I LEFT JOIN users U ON U.id = I.possesseur WHERE U.email = '$email'
Et donc ça devrait donner un truc de ce genre :
$email= isset($_SESSION['email'])?$_SESSION['email']:NULL; if($email){ $sql1 = "SELECT U.prenom ,U.email ,I.nom ,I.lien ,U.nom FROM info I LEFT JOIN users U ON U.id = I.possesseur WHERE U.email = '$email'"; $req = mysql_query($sql1) or die("Erreur dans la requete :".$sql1 . "<br>Erreur :<br>".mysql_error()); // Au cas où.. pour connaitre le nb de résultats retournées par la requête $num_rows = mysql_num_rows($req); // Le temps des tets : echo "<br> La requête a retournée : <b>".$num_rows. "</b> résulats <br><br>"; $nbcol=4; $i=0; echo '<table>'; while ($donnees = mysql_fetch_array($req)) { $lien=$donnees['lien']; $nom=$donnees['nom']; if($i%$nbcol==0){ echo '<tr>'; } echo "<td > <a href='$lien' target='_blank' > <img src='$lien' height='115' width='235' alt='$nom' href='$lien'> </a> </td>"; if($i%$nbcol==($nbcol-1)){ echo "</tr>"; } //on incrémente i $i++; } //fin du WHILE echo '</table>'; }else{ echo "<br> ERREUR : Pas d'email ! "; } // fin du IF email
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 13:07
16 juin 2015 à 13:07
not work :'(
je pense que une urreur dans ce code
identificatient de prossessus apartir de id user
SVP SVP tu peut verifie ce code
et je ss vraiment desole
normalement c quelqu'un ajouter une image le processuss de chaque image prend la valeur de id de user
je pense que une urreur dans ce code
identificatient de prossessus apartir de id user
SVP SVP tu peut verifie ce code
et je ss vraiment desole
normalement c quelqu'un ajouter une image le processuss de chaque image prend la valeur de id de user
try { $bdd = new PDO('mysql:host=localhost;dbname=uploadimageige36','root',''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $reponse = $bdd->query('SELECT * FROM users'); while ($donnees = $reponse->fetch()) { $id_user=$donnees['id']; } //========== $cnx = mysql_connect( "localhost", "root", "" ) ; //Sélection de la base de données: $db = mysql_select_db( "uploadimageige36" ) ; $nom= $name ; $taille = $size ; $extension = $type ; $lien= "$uploadpath/$name" ; //PARTIE A AJOUTER //========== $possesseur=$id_user; //========== //création de la requête SQL: $sql = "INSERT INTO info (nom, taille, extension, lien , possesseur) VALUES ( '$nom', '$taille', '$extension', '$lien' , '$possesseur') " ; //exécution de la requête SQL: $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 13:17
16 juin 2015 à 13:17
Ce code là ... il te sert à quoi normalement ?
Car actuellement ... là ... tu ne fais que récupérer le dernier ID parmis toute ta table...
et en aucun cas .. il ne s'agit de l'ID du user connecté !
A la limite .. vu que tu as dans tes variables de session l' email du USER...
tu pourrais modifier le code ainsi :
Par contre.... il faut vraiment que tu m'expliques POURQUOI .. tu utilises en même temps ... du PDO et du mysql_* ?????
Soit tu fais tout avec l'extension mysql ... soit tu passes TOUT en PDO !!!!!
(et de préférence.. PDO est mieux !!! )
$reponse = $bdd->query('SELECT * FROM users'); while ($donnees = $reponse->fetch()) { $id_user=$donnees['id']; } //==========
Car actuellement ... là ... tu ne fais que récupérer le dernier ID parmis toute ta table...
et en aucun cas .. il ne s'agit de l'ID du user connecté !
A la limite .. vu que tu as dans tes variables de session l' email du USER...
tu pourrais modifier le code ainsi :
$email= isset($_SESSION['email'])?$_SESSION['email']:NULL; $sql = "SELECT * FROM users WHERE email = '$email' "; $reponse = $bdd->query($sql); while ($donnees = $reponse->fetch()) { $id_user=$donnees['id']; }
Par contre.... il faut vraiment que tu m'expliques POURQUOI .. tu utilises en même temps ... du PDO et du mysql_* ?????
Soit tu fais tout avec l'extension mysql ... soit tu passes TOUT en PDO !!!!!
(et de préférence.. PDO est mieux !!! )
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
15 juin 2015 à 17:07
15 juin 2015 à 17:07
-- phpMyAdmin SQL Dump -- version 4.1.14 -- http://www.phpmyadmin.net -- -- Client : 127.0.0.1 -- Généré le : Lun 15 Juin 2015 à 15:04 -- Version du serveur : 5.6.17 -- Version de PHP : 5.5.12 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; -- -- Base de données : `uploadimageige36` -- -- -------------------------------------------------------- -- -- Structure de la table `admin` -- CREATE TABLE IF NOT EXISTS `admin` ( `email` text NOT NULL, `password` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Contenu de la table `admin` -- INSERT INTO `admin` (`email`, `password`) VALUES ('peu@hotmail.com', '123456'), ('ige_36@yahoo.fr', '123456'); -- -------------------------------------------------------- -- -- Structure de la table `info` -- CREATE TABLE IF NOT EXISTS `info` ( `nom` varchar(100) NOT NULL, `taille` int(11) NOT NULL, `extension` varchar(15) NOT NULL, `lien` varchar(100) NOT NULL, `date` date NOT NULL, `motclef` varchar(70) NOT NULL, `possesseur` int(11) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Contenu de la table `info` -- INSERT INTO `info` (`nom`, `taille`, `extension`, `lien`, `date`, `motclef`, `possesseur`) VALUES ('BestHDWallpapersPack1140_73.gif', 790454, 'image/gif', 'verify/BestHDWallpapersPack1140_73.gif', '0000-00-00', '', 6), ('BestHDWallpapersPack1140_91.gif', 798107, 'image/gif', 'verify/BestHDWallpapersPack1140_91.gif', '0000-00-00', '', 6), ('BestHDWallpapersPack1140_60.gif', 717379, 'image/gif', 'verify/BestHDWallpapersPack1140_60.gif', '0000-00-00', '', 5), ('BestHDWallpapersPack1140_63.gif', 421277, 'image/gif', 'verify/BestHDWallpapersPack1140_63.gif', '0000-00-00', '', 5), ('BestHDWallpapersPack1140_75.gif', 768607, 'image/gif', 'verify/BestHDWallpapersPack1140_75.gif', '0000-00-00', '', 6); -- -------------------------------------------------------- -- -- Structure de la table `messages` -- CREATE TABLE IF NOT EXISTS `messages` ( `nom` text NOT NULL, `email` text NOT NULL, `sujet` text NOT NULL, `message` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Contenu de la table `messages` -- INSERT INTO `messages` (`nom`, `email`, `sujet`, `message`) VALUES ('khaled', 'adda', 'adda', 'jajlajzj'), ('khaled', 'kkzzk', 'kkzzk', 'slkfdjqlkjdqlkdjq'), ('sf,sfsdfs', 'sdfs', 'sdfs', 'sfsfsfs'), ('sf,sfsdfs', 'sdfs', 'sdfs', 'sfsfsfs'); -- -------------------------------------------------------- -- -- Structure de la table `users` -- CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nom` text NOT NULL, `prenom` text NOT NULL, `email` text NOT NULL, `password` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ; -- -- Contenu de la table `users` -- INSERT INTO `users` (`id`, `nom`, `prenom`, `email`, `password`) VALUES (1, 'belhadia ', 'youcef', 'aaaaa@aaa.fr', '1234567'), (2, 'aez', 'mammeri', 'aez@outlook.fr', '04061993'), (3, 'farid', 'belkhelfa', 'cicifafa@outlook.fr', '123'), (4, 'aaaa', 'AAA', 'aaaaa@aaa.fr', '123'), (5, 'fff', 'dddd', 'sihamouizou@yahoo.fr', '1234'), (6, 'farid', 'belkhelfa', 'peu@hotmail.com', '123'); /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 00:48
16 juin 2015 à 00:48
SVP :'(
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
>
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 09:31
16 juin 2015 à 09:31
Je n'ai pas eu le temps hier .. je vais essayer de voir ça aujourd'hui.
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 11:20
16 juin 2015 à 11:20
j vous attends ^^merci
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 14:23
16 juin 2015 à 14:23
Ok OK
j'utilise mysql ..
je n sais pas , q je oublige d'utiliser une des deux
desole mon frere
je suis un debutant ... et de vous nous apprenons
merci bcp pout tt les explications !!
j'utilise le dernier code :
mais il affiche a l'exucution un probleme sur cett ligne
j'utilise mysql ..
je n sais pas , q je oublige d'utiliser une des deux
desole mon frere
je suis un debutant ... et de vous nous apprenons
merci bcp pout tt les explications !!
j'utilise le dernier code :
$cnx = mysql_connect( "localhost", "root", "" ) ; //Sélection de la base de données: $db = mysql_select_db( "uploadimageige36" ) ; $email= isset($_SESSION['email'])?$_SESSION['email']:NULL; $sql = "SELECT * FROM users WHERE email = '$email' "; $reponse = $bdd->query($sql); while ($donnees = $reponse->fetch()) { $id_user=$donnees['id']; } //==========
mais il affiche a l'exucution un probleme sur cett ligne
$reponse = $bdd->query($sql);
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 14:56
16 juin 2015 à 14:56
... Typiquement ... là .. dans ton code ... tu as un mixe des deux ... donc ça ne marchera JAMAIS.
Par exemple ...
tu fais :
(ce qui est du mysql_* )
et ensuite :
... qui est du PDO !!!!!!!
Dans ce cas... la bonne syntaxe serait :
Idem pour ta boucle WHILE ... là.. tu y as mis la syntaxe PDO ....
en mysql_* ça serait
mais bon... comme cette requête n'est sensée retourner qu'une seule ligne de toutes façons...
tu pourrais retirer la boucle while et directement écrire :
Par exemple ...
tu fais :
$db = mysql_select_db( "uploadimageige36" ) ;
(ce qui est du mysql_* )
et ensuite :
$reponse = $bdd->query($sql);
... qui est du PDO !!!!!!!
Dans ce cas... la bonne syntaxe serait :
$reponse = mysql_query($sql) or die('Requête invalide : ' . mysql_error());
Idem pour ta boucle WHILE ... là.. tu y as mis la syntaxe PDO ....
en mysql_* ça serait
while($donnees =mysql_fetch_array($reponse)) { $id_user=$donnees['id']; }
mais bon... comme cette requête n'est sensée retourner qu'une seule ligne de toutes façons...
tu pourrais retirer la boucle while et directement écrire :
$donnees =mysql_fetch_array($reponse)); $id_user=$donnees['id'];
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 15:18
16 juin 2015 à 15:18
Merciiii Bcp
ça marche trres tres tres bienn
!!
just une autre question
j'ai utilise deux session une pou chaque user et une pour adminn !!
et le probleme dans affichage
normalement cela l'admin vu tt les photos
pas de solutions ou j'ai crie une autre page !!!
ça marche trres tres tres bienn
!!
just une autre question
j'ai utilise deux session une pou chaque user et une pour adminn !!
et le probleme dans affichage
normalement cela l'admin vu tt les photos
pas de solutions ou j'ai crie une autre page !!!
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 15:37
16 juin 2015 à 15:37
Tu peux simplement modifier la requête et y retirer le WHERE si ADMIN.
Je ne peux pas t'en dire plus sans savoir comment tu identifies que le user est admin ou non ... une variable de SESSION peut-être ??
Je ne peux pas t'en dire plus sans savoir comment tu identifies que le user est admin ou non ... une variable de SESSION peut-être ??
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 15:41
16 juin 2015 à 15:41
TU peux le virifier svp mon frere
fichier login
fichier login
$query = "SELECT * FROM `users` WHERE email='$email' and password='$password'"; $res = mysql_query($query) or die(mysql_error()); $count= mysql_num_rows($res); if ($count == 1){ if(session_id() == '') { session_start(); } $_SESSION['email'] = $email; header ('location: useer.php'); } else { $query = "SELECT * FROM `admin` WHERE email='$email' and password='$password'"; $res = mysql_query($query) or die(mysql_error()); $count= mysql_num_rows($res); if ($count == 1){ if(session_id() == '') { session_start(); } $_SESSION['email'] = $email; header ('location: administrateur.php'); } } setcookie($_POST['email'],"",time()+3600); }
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 16:04
16 juin 2015 à 16:04
Voici ton code corrigé :
... par contre... je vois que tu as fais deux tables... une pour les users.. une pour les admins...
Le mieux serait de n'avoir qu'une seule table ... qui aurait (en plus des autres champs) un champ : isadmin .. que tu mettrais à 1 ou à 0 en fonction de si l'utilisateur est un admin ou non ....
ce qui modifierait ton code ainsi :
<?php // Démarrer les SESSION AVANT TOUT AUTRE CHOSE ! if(session_id() == '') { session_start(); } $query = "SELECT * FROM `users` WHERE email='$email' and password='$password'"; $res = mysql_query($query) or die(mysql_error()); $count= mysql_num_rows($res); if ($count == 1){ $_SESSION['admin'] = false; $_SESSION['email'] = $email; header ('location: useer.php'); } else { $query = "SELECT * FROM `admin` WHERE email='$email' and password='$password'"; $res = mysql_query($query) or die(mysql_error()); $count= mysql_num_rows($res); if ($count == 1){ $_SESSION['admin'] = true; $_SESSION['email'] = $email; header ('location: administrateur.php'); } } setcookie($_POST['email'],"",time()+3600); }
... par contre... je vois que tu as fais deux tables... une pour les users.. une pour les admins...
Le mieux serait de n'avoir qu'une seule table ... qui aurait (en plus des autres champs) un champ : isadmin .. que tu mettrais à 1 ou à 0 en fonction de si l'utilisateur est un admin ou non ....
ce qui modifierait ton code ainsi :
// Démarrer les SESSION AVANT TOUT AUTRE CHOSE ! if(session_id() == '') { session_start(); } //récupération des variables $email = isset($_POST['email'])?$_POST['email']:NULL; $password = isset($_POST['password'])?$_POST['password']:NULL; $query = "SELECT * FROM `users` WHERE email='$email' and password='$password'"; $res = mysql_query($query) or die(mysql_error()); $count= mysql_num_rows($res); if ($count == 1){ // l'utilisateur existe setcookie($email,"",time()+3600); $row = mysql_fetch_row($result) $isadmin = $row['isadmin']; $_SESSION['email'] = $email; if($isadmin == 1 ){ $_SESSION['admin'] = true; header ('location: administrateur.php'); }else{ $_SESSION['admin'] = false; header ('location: useer.php'); } else { echo "<br> Erreur : il y a ".$count ." resultats pour cette requete"; } }
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 16:10
16 juin 2015 à 16:10
Et pour ce qui est de ta page Photos..... (celle où tu affiches les photos...)
tu peux faire :
tu peux faire :
$strWhere = isset($_SESSION['isadmin']) && $_SESSION['isadmin'] == true ? "WHERE email = '$email' ": ''; $sql = "SELECT * FROM users ".$strwhere;
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 17:22
16 juin 2015 à 17:22
j'ai utilise isadmin mais j'ai ajoute un champ dans la table user et modifier les admin
isadmin =1
mais ne fonctione pas
il lu tous les utilisateurs comme user et la destination userr.php toujours
isadmin =1
mais ne fonctione pas
il lu tous les utilisateurs comme user et la destination userr.php toujours
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 17:24
16 juin 2015 à 17:24
Désolé.. petite erreur :
A remplacer par :
$row = mysql_fetch_row($result)
A remplacer par :
$row = mysql_fetch_row($res)
khalidouche
Messages postés
26
Date d'inscription
jeudi 11 juin 2015
Statut
Membre
Dernière intervention
16 juin 2015
16 juin 2015 à 17:32
16 juin 2015 à 17:32
MEME problemee toujours
vers la page user . php
comme user
vers la page user . php
comme user
jordane45
Messages postés
38315
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
16 juin 2015 à 19:06
16 juin 2015 à 19:06
Ajoute un print_r ( $row); et colle nous le résultat.
Montre nous aussi le ode que tu utilises (y compris avec le print_r )
Montre nous aussi le ode que tu utilises (y compris avec le print_r )
14 juin 2015 à 01:08
mon site : upload image apres inscription
chaque utilisateur upload ses images et qui clique sur affiche les photos normalemns just les photos qui lui ajoute sera affiche mais non
tous les photos de tous les utilisateurs affichent dans chque utilisateur :/
c pour ca ja ajoute attribut possesseur (table info de image) pour specifier id de chaque utilisateuur mais le probleme le code marche pas avec moi :(