Page 1 sur 1

Soucis de validité en admin

Posté : 05 mars 2014, 13:31
par blinz
Bonjour,
Voilà j'ai créer une page admin afin de pouvoir contrôler la validité de mes annonces.
J'ai une table nommé :loisirs dans une colone nommé: valide de type tinyint qui par defaut vaut 0.
Mon but est tout simplement de passé cette valeur de 0 a 1. car 0= Hors ligne et 1= En ligne ainsi je ne passe plus par PHPMYADMIN.
Voici mon formulaire pour ceçi, Enfait tout marche car j'ai bien le message comme quoi l'annonce à était modifier mais en base de donnée la valeur reste inchangé.
Je sollicite votre aide de ce fait.
<?php
	if($_REQUEST["titre"]!=""){
		$valide = addslashes($_REQUEST["valide"]);
		$id = $_REQUEST["idloisirs"];

		
		$reqMod = "UPDATE projets SET  valide = '" . $valide  . "' WHERE id_loisirs = " . $id;

		//echo $reqMod;
		$resMod =  mysql_query($reqMod);

			echo"annonce modifiée";
			?>
            <script language="javascript">
				function ferme(){
					window.close();
				}
				opener.location.reload();
				setTimeout("ferme()",1000);
			</script>
			<?php
		
	}else{
		$reqRef = "select * from loisirs where id_loisirs= ". $_REQUEST["idloisirs"];
		$resRef = mysql_query($reqRef);
		$rowsRef = mysql_fetch_array($resRef);

?>

<div id="global">
	
    <!-- main -->
    <div id="main">
    	<!-- main gauche -->
        <div id="gauche-admin">
           
           <table cellpadding="10" cellspacing="10" border="0" width="800" class="popup" align="center">
<form action="modifRef.php" method="post" enctype="multipart/form-data">

 
	<tr>
    	<th align="left" colspan="2">Modifier la validité de l'annonce <span class="obligatoire">*</span> : <br />
        <input type="text" name="titre" value="<?php echo $rowsRef["valide"];?>" /></th>
    </tr> 
    
     <tr>
        <td colspan="2" align="left"><input type="submit" value="Modifiez" /></td>
    </tr>
   
     
    <input type="hidden" value="<?php echo $_REQUEST["idloisirs"]; ?>" name="idloisirs" />
</form>
</table>

        </div> 
        <!-- Fin main gauche -->
    </div>
    <!-- Fin main -->
</div>
<!--Fin Structure globale -->
<?php
	}//fin if vide

?>
</body>
</html>
<?php
	}
?>

Re: Soucis de validité en admin

Posté : 05 mars 2014, 14:21
par xTG
Pour debugguer et trouver le problème :
- désactiver le script Javascript
- faire un echo de la variable $reqMod
- afficher le retour de mysql_error() après le mysql_query()

Re: Soucis de validité en admin

Posté : 05 mars 2014, 22:23
par damien_55
Bsr,

De meme, je commencerai par faire des un code dans le bon ordre, exemple.
<th align="left" colspan="2">Modifier la validité de l'annonce <span class="obligatoire">*</span> : <br />
        <input type="text" name="titre" value="<?php echo $rowsRef["valide"];?>" /></th>
    </tr> 
    
     <tr>
        <td colspan="2" align="left"><input type="submit" value="Modifiez" /></td>
    </tr>
   
     
    <input type="hidden" value="<?php echo $_REQUEST["idloisirs"]; ?>" name="idloisirs" />
</form>
Le submit valide ton envoi de formulaire un fois toutes les données traités donc par logique je le met toujours juste avant de fermé le formulaire. (ce serait dommage d'oublier une valeur comme ton "hidden".
<th align="left" colspan="2">Modifier la validité de l'annonce <span class="obligatoire">*</span> : <br />
        <input type="text" name="titre" value="<?php echo $rowsRef["valide"];?>" /></th>
    </tr> 
    <input type="hidden" value="<?php echo $_REQUEST["idloisirs"]; ?>" name="idloisirs" />
     <tr>
        <td colspan="2" align="left"><input type="submit" value="Modifiez" /></td>
    </tr>
</form>

Re: Soucis de validité en admin

Posté : 05 mars 2014, 23:12
par blinz
Merci de remettre ça en place, mais le problème reste le même impossible de modifier la table
si il y a une autre solution je suis preneur, je desepsere :/

Re: Soucis de validité en admin

Posté : 06 mars 2014, 00:07
par nriem
bonjour,

si j'ai bien compris, tu veux pouvoir activer une annonce,
il suffit de vérifier que tu reçois bien les bon paramètre (_GET) dans l'URL,
faire un SELECT pour vérifier si l'id de l'URL existe bien dans la base de données
et après modifier ta colonne VALIDE en 1
$req = $bdd->prepare('UPDATE loisirs SET valide= :valide WHERE id = :id');
$req->execute(array('active' => 1, 'id' => $id));

Re: Soucis de validité en admin

Posté : 06 mars 2014, 21:57
par blinz
Ok mais comment fair activer cette annonce via un bouton du genre onclik. Dsl mais je suis un peu perdu la. Merci

Re: Soucis de validité en admin

Posté : 06 mars 2014, 22:16
par damien_55
Slt,

En ajax, c'est possible.

Ajax avec une methode get ou post, et un formulaire qui envoi les données sur une page php qui traite tes données.

Re: Soucis de validité en admin

Posté : 07 mars 2014, 10:55
par xTG
Avant de sauter du coq à l'âne commences par avoir un script basique mais qui fonctionne...
Pour debugguer et trouver le problème :
- désactiver le script Javascript
- faire un echo de la variable $reqMod
- afficher le retour de mysql_error() après le mysql_query()