Interprétation php + bouton submit

Résolu
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   -  
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je développe un site. J'utilise des "si... alors... sinon...." pour savoir ce que j'affiche selon si l'utilisateur est connecté ou non. Mon problème: tout est affiché, donc mes conditions ne sont pas prises en compte. Voici un exemple :


if ( (empty ($_SESSION["pseudonyme"]) ) || ($_SESSION["pseudonyme"] == "") )
{ ?>
<a href="pageconnexion.php" target=_top>Connexion</a><br>
<a href="pageinscription.php" target=_top>Inscription</a><br>
<?}
else
{?>
<a href="pagemoncompte.php" target=_top> Mon compte </a> <br>
<?
}
?>



De plus, j'ai un autre soucis, peut être est-il en rapport avec le premier (?). J'ai des formulaires avec un bouton "enregistrer" puis un bouton "annuler" tels que :


<input type="submit" value="Enregistrer" onclick="window.location.replace('codeconnexion.php')"/>

<input type="button" value="Annuler" onclick="window.location.replace('index.php')"/>


Lorsque je clique sur "Enregistrer" (donc bouton submit), il y a un gros bug: "Apache HTTP Serveur a rencontré un problème et doit fermer...". Le bouton "Annuler" fonctionne correctement en me redirigeant sur la page index.php . Je précise que le formulaire en question contient bien dans ses paramètres "action="fichier-executant-le-code.php"" ...



En espérant avoir été assez claire...
Je vous remercie d'avance pour votre aide.



32 réponses

hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Euh... T'aurais pas plus compliquer ?
Pourquoi faire simple quand on peut faire compliquer c'est ça ? :p

Non sérieux, avec un code aussi charger, tu m'étonne qu'apache plante :p

Essaye plutôt ça :
<?php 
// Inclusion et execution du fichier db.php 
require('connexionBDD.php'); 


if(!isset($_POST["pseudo"]) || !isset($_POST["mdp"]) || empty($_POST["pseudo"]) || empty($_POST["mdp"])){ // Cas ou login et motdepasse n'xistent pas ou sont vides 
	echo 'Attention, remplissez tous les champs.'; 
} 
else{ // Recherche des utilisateurs. 
	$req = mysql_query("SELECT * FROM client WHERE pseudonyme='".$_POST["pseudo"]."' AND motdepasse='".$_POST["mdp"]."'") or die ("Erreur requete: ".mysql_error()); 
	if(mysql_num_rows($req) == 0){ // si utilisateur non trouvé
		echo 'Mauvais login ou mauvais mot de passe !';
		@mysql_close();
		header('location: index.php'); 
	} 
	else{ // sinon
		echo "Logs OK !";
		@mysql_close();
	}
}
?>


Plus court et moins lourd non ?
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Sorry double post, pas vu qu'il y avait une autre page ><
0
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
j'ai remplacé le code, en ayant bien enregistré et actualisé, mais malheureusement j'ai quand même le bug de apache...
Merci quand même pour le code beaucoup plus simple en effet! =)
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Arrête appache et redémarre-le ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
C'est fait, et je viens à nouveau de le refaire, rien n'y fait ...
Merci quand même de m'avoir accordé ton temps !
0
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
Le bug ne provient pas du bouton submit! C'était quasi-sur mais maintenant ça l'est à 100% xD En effet j'ai une page qui affiche des infos grâce à des requêtes et selon des conditions, et juste quand je demande d'afficher la page, il y a le rapport d'erreur...

voici le code: (c'est pour afficher des articles)

<div id="corps">
<h2> Les articles </h2><br>

<table>
<tr>
<td> Afficher les articles de la catégorie : </td>
<td><select NAME="categorie">
<option> Choisir categorie </option>
<?php $req=mysql_query("Select categorie from CATEGORIE") or die ("Erreur requete: ".mysql_error());
if( mysql_num_rows($req) == 0 )
{ echo 'Problème sur la BDD';
header('location: index.php');
}
else
{ $i = 0;
$trouve =0;

while ( ( $i<mysql_num_rows($req) ) && ($trouve ==0) )
{
$donnee = mysql_fetch_array($req);?>
<option VALUE="<?php echo ' ' .$donnee["categorie"]. ' ';?>"><?php echo ' ' .$donnee["categorie"]. ' ';
$i=$i+1;
}
}?>
</select>
</td>
</tr>
</table>
<br><br>

<?php
$req = mysql_query("Select reference, libelle, stock, photo, prixunitaireht, souscategorie from article Order by souscategorie, prixunitaireht;") or die ("Erreur requete: ".mysql_error());

if( mysql_num_rows($req)<1)
{
?> <p> Aucun article n'est enregistré ! </p> <?php
}
else { ?>
<table class="affichage">
<tr>
<td><b>Sous catégorie</b></td>
<td><b>Référence</b></td>
<td><b>Libellé</b></td>
<td><b>Prix TTC</b></td>
<td><b>Stock disponible</b></td>
<td><b>Photo</b></td>
<td><b>Fiche article</b></td>
<td><b>Réserver</b></td>
</tr>
<?php

while( $donnee = mysql_fetch_array($req) )
{
// Sortie du résultat dans le tableau
?>
<tr>
<td align=center> <?php echo $donnee['souscategorie']; ?></td>
<td align=center> <?php echo $donnee['reference']; ?></td>
<td align=center> <?php echo $donnee['libelle']; ?></td>
<td></td>
<td align=center> <?php echo $donnee['stock']; ?></td>
<td align=center> <?php echo $donnee['photo']; ?></td>
<td></td>
<td>Panier</td>
</tr>

<?php
}
}
@mysql_close()
?>
</table>

</div>


La liste déroulante ne sert pas à grand chose pour le moment, je l'utiliserai dans le WHERE quand je saurais récupérer la valeur de la liste déroulante au moindre click sur celle ci ^^'
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
C'est ton windows qui doit faire planter ton apache... T'as essayer de redémarrer l'ordi ?

Ou plus radicale (non pas reformatter quand même =_=) désinstaller le logiciel et le ré-installer ?
0
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
oui j'ai redémarrer l'ordi, je vais essayé de le réinstaller (mais plus tard, ce n'est pas MON ordi ^^), je te dirais le résultat...

Merci !
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Pas de problème ;)
0
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
J'ai trouvé le problème avec le serveur apache! Mais je ne sais pas vraiment l'explication. A la fin de mes fichiers, j'ai enlevé : @mysql_close() ...

Bref! tant que ça marque =p
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Ah oui en effet c'est très bizarre Oo je le met jamais m'enfin bref, comme tu dis tant que ça marche :p...
0
mimi8210 Messages postés 167 Date d'inscription   Statut Membre Dernière intervention   10
 
Oui !!
... Et encore merci beaucoup pour ton aide.
Bon week end !!
0