Bzh

  • Nombre de sujets
    62
  • Nombre de messages
    1 503
  • Nombre de commentaires
    24
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

Bzh
le 10/08/2005 à 16:32
recupérer les données
Je n' ai pas reçu de message.

Ensuite si c' est dans un tableau c' est encore plus simple.

<a href="form_confirm_modif.php?idproduit=ce_que_tu_veux">Cliquez ici pour voir le détail</a>

Enfin je ne sais pas si tu me suis...
J' ai peut être mal compris.

Il faut que tu construises ton lien en fonction de l' id.

exemple:
<a href="form_confirm_modif.php?idproduit=1">Cliquez ici pour voir le détail du produit 1</a>

<a href="form_confirm_modif.php?idproduit=2">Cliquez ici pour voir le détail du produit 2</a>

<a href="form_confirm_modif.php?idproduit=3">Cliquez ici pour voir le détail du produit 3</a>

<a href="form_confirm_modif.php?idproduit=4">Cliquez ici pour voir le détail du produit 4</a>


Mais attention, tu as oublié le '?' dans l' adresse. Le '&' ne sert qu' à séparer les variables.

Voila !!!

Et ensuite, dans ta page 'form_confirm_modif.php' tu gère l' affichage comme tu le fais. C' est bon...

Bye...
Bzh
le 10/08/2005 à 16:22
comment afficher ordrer by prix ASC correctement ?
Des virgules ou bien simplement un espace!!!

Les anglais, ils font toujours l' inverse de nous smiley !!!

Mais, tu les inserts LORS de l' affichage et surtout pas dans ta base !!! C' est seulement pour faciliter la lecture du nombre pour tes visiteurs !!!

Bye...
Bzh
le 10/08/2005 à 16:19
recupérer les données
Ha !!!!

Donc oui !!! Deux solutions s' offrent à toi !!!

Une en javascript et une autre en html !!!

La première en javascript !!!

<form action="form_confirm_modif.php" method="GET" enctype="application/postscript">

<select name="idproduit" onChange="javascript:submit();">
<option value="0">Nom</option>
<option value="0">Nom</option>
<option value="0">Nom</option>
</select>


</form>


Voila pour le javascript !

Pour la deuxième méthode sans javascript:
<form action="form_confirm_modif.php" method="GET" enctype="application/postscript">

<select name="idproduit">
<option value="0">Nom</option>
<option value="0">Nom</option>
<option value="0">Nom</option>
</select>

<p><input type="submit" value="Valider"></p>

</form>

Et sans javascript.

A la limite, tu peux mélanger les deux. Si le javascript ne fonctionne pas il pourra tjrs valider manuellement le formulaire.


Et maintenant, plus besoin de page intermédiaire ni de retoucher a ta page form_confirm_modif.php !!!

Voila comment il faut s' y prendre !!!
Bzh
le 10/08/2005 à 15:57
recupérer les données
Hey !!!!

Mais c' est vraiment la mode du javascript c' est pas vrai ça !!!

Pourquoi vouloir toujours utiliser le javascript alors que l' on peut faire la même chose en simple html ou en php !!!

Le javascript n' est là SEULEMENT pour agrémenter le site et SURTOUT pas pour la navigation direct dans le site.

Si, moi, je refuse le javascript, tu peux me dire comment je navigue dans ton site ???

J' ai du mal a suivre ta logique. Pourquoi passer par cette page alors que tu peux très bien récupérer, dans ta page 'form_confirm_modif.php', la valeur de '$_POST['idproduit']'. Au lieu de passer par cette page que va transformer la variable $_POST en $_GET !!! Je trouve ça bizard !!!

Donne plus d' info sur ce que tu veux faire parce que là je te suis pas tellement !!!

Bye...
Bzh
le 10/08/2005 à 15:37
recupérer les données
Ha et bien voila !!!

On avance là !!!

On mon avis, cela vient tout simplement du fait que
<?php
// modification
if(isset($_GET['idproduit']))
{
$rqt = "SELECT * FROM produit WHERE idproduit=".$_GET['idproduit'];
$res = mysql_query($rqt) or die(mysql_error());
$curseur = mysql_fetch_row($res);
$idproduit = mysql_insert_id();
}
?>
n' est pas logique du tout !!!!

Modifie en
<?php
// modification
if(isset($_GET['idproduit']))
{
$rqt = "SELECT * FROM produit WHERE idproduit=".$_GET['idproduit'];
$res = mysql_query($rqt) or die(mysql_error());
$curseur = mysql_fetch_row($res);
$idproduit = mysql_insert_id();
?>
<table cellSpacing=1 cellPadding=4 bgColor="#000000" border=0>
<tr>
<td width="100%" height=24 vAlign="middle" bgColor="#ffba00">
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
Ajout produit
</FONT></td></tr>

<br>
<table align="center">
<tr>
<td width="169" height="24" valign="top">Nom </td>
<td width="144" valign="top">
<input name="nomproduit" type="text" value="<? if (isset($curseur[1])) echo $curseur[1]; ?>"></td>
</tr>

<tr>
<td height="24" valign="top">Description</td>
<td valign="top">
<input name="descproduit" type="text"></td>
</tr>
</table>
</tr>
</table>
<?php

}else{ echo '<p>La variable "idproduit" n\' est pas déclaré...</p>'; }

?>


Une erreur de corrigé.

Bon pour terminer, cela vient de ta variable "$_GET['idproduit']" qui n' est pas déclaré.

Il faut absolument que tu appel ta page avec
ta_page.php?idproduit=ta_valeur
Sinon, sa ne peut pas marcher !!!

Bye et bon courage...
Bzh
le 10/08/2005 à 15:26
Bcp d'erreur 404
Donc tu utilises google comme moteur de recherche interne.

Quels peuvent être les avantages ??? Personnelement je ne vois que des inconvéniants...

Pourquoi ne gères-tu pas toi même ton moteur de recherche ???

Bon ça demandera pas mal de ressources au serveur je suis d' accord, mais à mon avis ce sera beaucoup mieu parce que les erreurs 404 sont tout de même énervante.

Bye...

ps: Et le nouveau design ???C' est bien beau de nous avoir montré le logo mais maintenant on voudrait voir tout le design !!!
Bzh
le 10/08/2005 à 15:19
upload et si le nom existe deja
Si, ce n' est pas génant TANT que le fichier est d' extantion php ET que les mots de passe sont enregistrés dans des constantes ou des variables.

Example:
mot_de_passe.php
<?php

$identifiant = "mon_identifiant";
$mot_de_passe = "mon_mot_de_passe";

//Ca, c'est bon...
?>


Par contre, ça, c' est très mais très mauvais:
mot_de_passe.inc
mon_identifiant:mon_mot_de_passe


Quelque soit le répertoire. Il sera toujours accessible. Sauf si on utilise le fichier d' Apache .htaccess, mais là, c' est différent et un peu plus compliqué.

Bye...
Bzh
le 10/08/2005 à 15:10
recupérer les données
Pour commencer, évite vraiment le
SELECT *
Remplace le par
SELECT ce_que_tu_veux, et_encore_ce_que_tu_veux
C' est important pour la rapidité d' acces.

Ensuite, si a mon avis rien n' apparait c' est peut être à cause de deux choses:

la première: Tu teste l' existance de la variable.Donc si la variable n' existe pas sa n' affiche pas. Pas terrible pour débuger. Remplace
<? if (isset($curseur[1])) echo $curseur[1]; ?>
par
<? echo $curseur[1]; ?>
Comme ça, si ta variable n'existe pas (ce qui n' est pas normal) tu auras un message d' erreur.Et c' est déja beaucoup mieu pour le débugage.

La deuxième: C'est peut être parce que dans ta base de donné, le champs est vide ou null. Vérifie ça...
____________________________________________________________________

Autre chose très grave. Tu as une faille dans ton script. On peut tenter une injection de SQL !!!

Remplace
<?php
// modification
if(isset($_GET['idproduit']))
{
$rqt = "SELECT * FROM produit WHERE idproduit=".$_GET['idproduit'];
$res = mysql_query($rqt) or die(mysql_error());
$curseur = mysql_fetch_row($res);
$idproduit = mysql_insert_id();
}
?>
par
<?php
// modification
if(isset($_GET['idproduit']))
{
$id_produit = mysql_real_escape_string($_GET['idproduit']);

$rqt = "SELECT * FROM produit WHERE idproduit='$id_produit'";
$res = mysql_query($rqt) or die(mysql_error());
$curseur = mysql_fetch_row($res);
$idproduit = mysql_insert_id();
}
?>


____________________________________________________________________

Et pour terminer, ce serait bien que tu revois un peu le cour sur la diférence entre " et ' pour les variables et les chaines de caratères.

Bye...
Bzh
le 10/08/2005 à 11:15
upload et si le nom existe deja
Heu !!!

Enfait juste comme ça !!!

C' est quoi un fichier '.inc' !!!

Ha mon avis ce n' est pas un fichier protêgé par Apache !!!!

Là il peut y avoir une faille. Je te conseil de changer l' extention en '.php' pour que le fichier soit protêgé par Apache et ainsi être sur que personne n' est accès à ton identifiant et à ton mot de passe SQL !!!

Bye...
LoadingChargement en cours