alexdu69
Messages : 10 Inscrit le 18/04/06
Ville : Vénissieux
Non connecté
|
|
Posté le 16 octobre 2007 - 09 h 22 m 53 s |
|
|
Reprise du message précédent :
Bon ben mon problème continue et je n'arrive vraiment pas à trouver d'où il vient. J'ai bien des session_start() au début de chaque page et j'ai vérifié mes variables de session et je n'ai pas trouvé d'erreur....
En fait c'est quand je je passe d'une certaine page à une autre ( n'importe laquelle ) que cela se produit.
Ma navigation fait comme si je m'étais pas connecté mais lorsque je veux me connecter cela m'indique que je le suis déja et rechange ma navigation en fonction de cela
|
|
| |
Message édité 1 fois, la dernière par alexdu69 le 16 octobre 2007 - 11 h 33. |
| |
|
grabber
Coordinateur
MacBook Pro Powered
Messages : 8 675 Inscrit le 06/03/02
Ville : Angers
Non connecté
|
|
Posté le 16 octobre 2007 - 10 h 19 m 31 s |
|
|
si la session casse et qu'il y a des session start partout, tu as peut etre mis un session destroy ou un unset d'une de tes variables.
par contre, les double pseudo sont interdits sur le forum, tu devrais utiliser 1 de tes 2 comptes et supprimer l'autre
|
|
| |
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 16 octobre 2007 - 13 h 53 m 00 s |
|
|
Aucun destroy ou aucun unset utilisé...
Et pour les doubles pseudos pseudo je n'avais pas fait attention j'ai dû me tromper apres avoir reformater mon ordi ^^
Voici mon code :
<script type="text/javascript">
function ouvre_popup(page) {
window.open(page,"nom_popup","status=yes, scrollbars=yes, menubar=no, resizable=yes, width=400, height=500");
}
</script>
<?php
if(isset($_GET['genre'])){
$genre=$_GET['genre'];
}
else{
$genre="null";
}
if(isset($_POST['pseudo'])){
$pseudo=$_POST['pseudo'];
}
else{
$pseudo=$_GET['pseudo'];
}
if(isset($_POST['type'])){
$type=$_POST['type'];
}
else{
$type=$_GET['type'];
}
$nombre=16;
$limite=$_GET['limite'];
if(!isset($limite)){
$limite=0;
}
$limitesuivante = $limite + $nombre;
$limiteprecedente = $limite - $nombre;
$limit="$limite,$nombre";
if($genre !="null" and $pseudo ==""){
$requete="select id_photo from photoperso where genre='".$genre."'";
$resultat=mysql_query($requete) or die ("erreur dans la requête");
$row=mysql_num_rows($resultat);
$total=$row;
$req="select nom,id_photo,miniature,pseudo from photoperso where genre = '".$genre."' order by id_photo desc limit ".$limit;
$result=mysql_query($req) or die (mysql_error());
$resultat=mysql_num_rows($result);
if($resultat!="0"){
echo'<p>Résultats trouvés :</p>';
while($data=mysql_fetch_array($result)){
$req5="select id_commentaire from commentaire where type='".$type."' and id_photo='".$data['id_photo']."'";
$result5=mysql_query($req5) or die (mysql_error());
$number=mysql_num_rows($result5);
echo'<span style="float:left">';
echo'<a href="affichephoto.php?id='.$data['id_photo'].'&type=perso"><img src="'.$data['miniature'].'" title="'.$data['nom'].' : posté par '.$data['pseudo'].'" alt="photo" style="margin-top:40px;margin-left:30px"/>
</a><br/><span style="margin-top:40px;margin-left:30px"><a href="javascript:ouvre_popup(\'commentaire.php?type=perso&id='.$data['id_photo'].'\')">Commentaire('.$number.')</a></span>
</span>';
}
echo'<br style="clear:both"><br/>';
echo'<div>';
if($limite==0){
if($limitesuivante<$total){
echo'<span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Suivante</a></span>';
}
}
if($limite!=0){
if($limitesuivante<$total){
echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Precedent</a></span><span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Suivante</a></span>';
}
else{
echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Precedent</a></span>';
}
}
echo'</div>';
echo'<p><a href="index.php?page=recherche&titre=Recherche">Retour choix</a></p>';
}
else{
echo'<p>Pas d\'animal présent actuellement dans cette catégorie.</p>';
}
}
else if($genre =="null" and $pseudo !=""){
$req2="select id_photo from photoperso where pseudo = '".$pseudo."'";
$result2=mysql_query($req2) or die (mysql_error());
$resultat=mysql_num_rows($result2);
$total=$resultat;
$req="select nom,id_photo,miniature from photoperso where pseudo = '".$pseudo."' order by id_photo desc limit ".$limit;
$result=mysql_query($req) or die (mysql_error());
if($resultat!="0"){
echo'<p>Résultats trouvés :</p>';
while($data=mysql_fetch_array($result)){
$req5="select id_commentaire from commentaire where type='".$type."' and id_photo='".$data['id_photo']."'";
$result5=mysql_query($req5) or die (mysql_error());
$number=mysql_num_rows($result5);
echo'<span style="float:left">';
echo'<a href="affichephoto.php?id='.$data['id_photo'].'&type=perso"><img src="'.$data['miniature'].'" title="'.$data['nom'].'" style="margin-top:40px;margin-left:30px"/></a><br/>';
echo'<span style="margin-top:40px;margin-left:30px"><a href="javascript:ouvre_popup(\'commentaire.php?type=perso&id='.$data['id_photo'].'\')">Commentaire('.$number.')</a></span>';
echo'</span>';
}
echo'<br style="clear:both"><br/>';
echo'<div>';
if($limite==0){
if($limitesuivante<$total){
echo'<span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Suivante</a></span>';
}
}
if($limite!=0){
if($limitesuivante<$total){
echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&&pseudo='.$pseudo.'&titre=Résultat de la recherche">Precedent</a></span><span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Suivante</a></span>';
}
else{
echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Precedent</a></span>';
}
}
echo'</div>';
echo'<p><a href="index.php?page=recherche&titre=Recherche">Retour choix</a></p>';
}
else{
echo'<p>Pas d\'animal pour ce pseudo.</p>';
}
}
?>
|
|
| |
Message édité 2 fois, la dernière par axou1er le 17 octobre 2007 - 08 h 36. |
| |
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 19 octobre 2007 - 09 h 54 m 34 s |
|
|
|
|
|
| |
|
Woofy
Pour les bons tuyaux me demander
Messages : 26 566 Inscrit le 11/01/02
Ville : Lyon
Non connecté
|
|
Posté le 19 octobre 2007 - 10 h 14 m 24 s |
|
|
Utilise la balise [code] !
pour faire ça :
1. <script type="text/javascript">
2. function ouvre_popup(page) {
3. window.open(page,"nom_popup","status=yes, scrollbars=yes, menubar=no, resizable=yes, width=400, height=500");
4. }
5. </script>
6. <?php
7. if(isset($_GET['genre'])){
8. $genre=$_GET['genre'];
9. }
10. else{
11. $genre="null";
12. }
13. if(isset($_POST['pseudo'])){
14. $pseudo=$_POST['pseudo'];
15. }
16. else{
17. $pseudo=$_GET['pseudo'];
18. }
19. if(isset($_POST['type'])){
20. $type=$_POST['type'];
21. }
22. else{
23. $type=$_GET['type'];
24. }
25. $nombre=16;
26. $limite=$_GET['limite'];
27. if(!isset($limite)){
28. $limite=0;
29. }
30.
31. $limitesuivante = $limite + $nombre;
32. $limiteprecedente = $limite - $nombre;
33.
34. $limit="$limite,$nombre";
35.
36. if($genre !="null" and $pseudo ==""){
37.
38. $requete="select id_photo from photoperso where genre='".$genre."'";
39. $resultat=mysql_query($requete) or die ("erreur dans la requête");
40. $row=mysql_num_rows($resultat);
41. $total=$row;
42.
43. $req="select nom,id_photo,miniature,pseudo from photoperso where genre = '".$genre."' order by id_photo desc limit ".$limit;
44. $result=mysql_query($req) or die (mysql_error());
45. $resultat=mysql_num_rows($result);
46. if($resultat!="0"){
47. echo'<p>Résultats trouvés :</p>';
48. while($data=mysql_fetch_array($result)){
49. $req5="select id_commentaire from commentaire where type='".$type."' and id_photo='".$data['id_photo']."'";
50. $result5=mysql_query($req5) or die (mysql_error());
51. $number=mysql_num_rows($result5);
52. echo'<span style="float:left">';
53. echo'<a href="affichephoto.php?id='.$data['id_photo'].'&type=perso"><img src="'.$data['miniature'].'" title="'.$data['nom'].' : posté par '.$data['pseudo'].'" alt="photo" style="margin-top:40px;margin-left:30px"/>
54. </a><br/><span style="margin-top:40px;margin-left:30px"><a href="javascript:ouvre_popup(\'commentaire.php?type=perso&id='.$data['id_photo'].'\')">Commentaire('.$number.')</a></span>
55. </span>';
56. }
57. echo'<br style="clear:both"><br/>';
58. echo'<div>';
59. if($limite==0){
60. if($limitesuivante<$total){
61. echo'<span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Suivante</a></span>';
62. }
63. }
64.
65. if($limite!=0){
66. if($limitesuivante<$total){
67. echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Precedent</a></span><span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Suivante</a></span>';
68. }
69. else{
70. echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&genre='.$genre.'&type='.$type.'&titre=Résultat de la recherche">Precedent</a></span>';
71. }
72. }
73. echo'</div>';
74. echo'<p><a href="index.php?page=recherche&titre=Recherche">Retour choix</a></p>';
75. }
76. else{
77. echo'<p>Pas d\'animal présent actuellement dans cette catégorie.</p>';
78. }
79. }
80. else if($genre =="null" and $pseudo !=""){
81. $req2="select id_photo from photoperso where pseudo = '".$pseudo."'";
82. $result2=mysql_query($req2) or die (mysql_error());
83. $resultat=mysql_num_rows($result2);
84. $total=$resultat;
85.
86. $req="select nom,id_photo,miniature from photoperso where pseudo = '".$pseudo."' order by id_photo desc limit ".$limit;
87. $result=mysql_query($req) or die (mysql_error());
88. if($resultat!="0"){
89. echo'<p>Résultats trouvés :</p>';
90. while($data=mysql_fetch_array($result)){
91. $req5="select id_commentaire from commentaire where type='".$type."' and id_photo='".$data['id_photo']."'";
92. $result5=mysql_query($req5) or die (mysql_error());
93. $number=mysql_num_rows($result5);
94. echo'<span style="float:left">';
95. echo'<a href="affichephoto.php?id='.$data['id_photo'].'&type=perso"><img src="'.$data['miniature'].'" title="'.$data['nom'].'" style="margin-top:40px;margin-left:30px"/></a><br/>';
96. echo'<span style="margin-top:40px;margin-left:30px"><a href="javascript:ouvre_popup(\'commentaire.php?type=perso&id='.$data['id_photo'].'\')">Commentaire('.$number.')</a></span>';
97. echo'</span>';
98. }
99. echo'<br style="clear:both"><br/>';
100. echo'<div>';
101. if($limite==0){
102. if($limitesuivante<$total){
103. echo'<span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Suivante</a></span>';
104. }
105. }
106.
107. if($limite!=0){
108. if($limitesuivante<$total){
109. echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&&pseudo='.$pseudo.'&titre=Résultat de la recherche">Precedent</a></span><span class="suivant"><a href="index.php?page=afficherecherche&limite='.$limitesuivante.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Suivante</a></span>';
110. }
111. else{
112. echo'<span class="precedent"><a href="index.php?page=afficherecherche&limite='.$limiteprecedente.'&pseudo='.$pseudo.'&titre=Résultat de la recherche">Precedent</a></span>';
113. }
114. }
115. echo'</div>';
116. echo'<p><a href="index.php?page=recherche&titre=Recherche">Retour choix</a></p>';
117. }
118. else{
119. echo'<p>Pas d\'animal pour ce pseudo.</p>';
120. }
121. }
122.
123. ?>
(j'ai refais l'indentation).
Moi là dessus je vois qu'il y a un gros effort a faire sur la syntaxe des echo !
Reste dans le style 1. <?php echo "blablabla" . $montableau['clé'] . "un blabla d'enfer avec quelqu'un qui parle et qui dit : \"whaou un backslash\""; ?>
Bon sinon ... où est ton session_start() ?
|
|
| |
Totalement inutile, donc completement indispensable 
|
Woofy
Pour les bons tuyaux me demander
Messages : 26 566 Inscrit le 11/01/02
Ville : Lyon
Non connecté
|
|
Posté le 19 octobre 2007 - 10 h 20 m 51 s |
|
|
Petite astuce de programmation pour un code plus clair et plus joli :
Dans un bloc conditionnel (if, for, while, ...) lorsque tu n'as qu'une ligne d'action, tu peux te passer des accolades.
genre :
1. if(isset($_GET['genre'])){
2. $genre=$_GET['genre'];
3. }
deviens :
1. if(isset($_GET['genre']))
2. $genre=$_GET['genre'];
Par exemple.
Ca marche aussi avec un else :
1. if(isset($_GET['genre'])){
2. $genre=$_GET['genre'];
3. }
4. else{
5. $genre="null";
6. }
deviens
1. if(isset($_GET['genre']))
2. $genre=$_GET['genre'];
3. else
4. $genre="null";
Mais dans ce cas il faudrait mieux utiliser une expression ternaire pour un if qui assigne une valeur.
En gros : $variable=(condition)?valuer si true : valeur si false;
Et on obtiens ceci :
1. $genre=isset($_GET['genre'])?$_GET['genre']:"null";
|
|
| |
Message édité 3 fois, la dernière par Woofy le 19 octobre 2007 - 10 h 23. |
| |
Totalement inutile, donc completement indispensable 
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 19 octobre 2007 - 13 h 29 m 15 s |
|
|
mon session_start() est dans ma page index.php.
Très interessant les variables ternaires!
|
|
| |
|
Woofy
Pour les bons tuyaux me demander
Messages : 26 566 Inscrit le 11/01/02
Ville : Lyon
Non connecté
|
|
Posté le 19 octobre 2007 - 15 h 02 m 14 s |
|
|
Il faut que tu fasse un session start au début de chaque page. C'est lui qui va envoyer les informations dans les headers, donc il doit être fait avant tout affichage au client. Si pas de session start, il ne peux pas retrouver la session.
Faut savoir que les pages web, ce n'est pas un mode connecté permanant. A chaque fois que tu change de page, le serveur voit arriver quelqu'un de nouveau, il ne sait pas forcément que c'est toi. Le session start lui permet de demander son identifiant au client.
|
|
| |
Totalement inutile, donc completement indispensable 
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 19 octobre 2007 - 16 h 43 m 53 s |
|
|
oui je le sais tres bien et il y a un session_start() sur toutes mes pages
|
|
| |
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 20 octobre 2007 - 17 h 33 m 21 s |
|
|
|
|
|
| |
|
grabber
Coordinateur
MacBook Pro Powered
Messages : 8 675 Inscrit le 06/03/02
Ville : Angers
Non connecté
|
|
Posté le 20 octobre 2007 - 20 h 26 m 24 s |
|
|
alors ct koi le probleme ????
|
|
| |
|
axou1er
Messages : 223 Inscrit le 21/11/06
Ville : Villeurbanne
Connecté
|
|
Posté le 22 octobre 2007 - 11 h 08 m 48 s |
|
|
je n'avais pas fait attention et chez mon hebergeur les register_globals etaient sur on c'est tout ^^
|
|
| |
|