Necnom

Inscris le 03/07/2007 à 16:51
  • Signature
    Necnom :)
  • Nombre de sujets
    10
  • Nombre de messages
    91
  • Nombre de commentaires
    3
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

Necnom
le 21/07/2007 à 06:50
préremplir les zones de texte
J'ai pas compris ...
Un user qui n'a pas rempli correctement le fomulaire arrive sur la page de traitement. Et cette page doit afficher les informations déja tappées aulieu de valider?? enfin .. tu peux m'expliquer stp ?

Si c'est un problème avec le "!empty", moi personnellement, j'utilise la variable "$null", donc si un champs est nul ... ça réaffiche les zones de textes.
Et dans l'attribut value, il n'y a pas de problème :
if ($_POST['zone3'] == $null) { // on peut rajouter les "ou"(||) selon le nombre de champs obligatoires
echo'<input type="text" value="'.$_POST['zone1'].'">';
echo'<input type="text" value="'.$_POST['zone2'].'">';

}
else {
// on valide; on fait le traitement
}


Il faut faire gaffe aux guillemets qui peuvent rompre les echos. si on fait un echo du type echo"";
Ben ... il ne faut pas que l'attribut value comporte des guillemets comme ceux-ci (""), si non, ça ferme l'echo.
-------------
Enfin ... moi c'est comme ça que je fais, si ça peut t'aider ...
Necnom :)
Necnom
le 14/07/2007 à 23:51
sujet délicat: auto incrément
Le champs AUTO_INCREMENT est un faux ami : c'est pratique, ca génère des identifiants uniques, mais les gens veulent s'en servir dans un but de "présentation". Or ce n'est pas fait pour.

Dans ce cas, existe-t-il ou il y a t-il une possibilité pour avoir 2 champs auto incrémentés dont, le premier serait l'id gardé définitivement par l'étudiant, et le second la position, tout ceci dans une base normale, et dans la même table.
Parce que si il faut choisir entre 1 auto incrément modifiable et la création d'un autre champs ou d'une autre table avec un script pour gérer les positions par exemple, j'avoue que le côté pratique de la chose n'est pas là .
Necnom :)
Necnom
le 14/07/2007 à 16:27
sujet délicat: auto incrément
désolé ... j'ai cliqué malencontreusement sur envoyer; je continue .

Aussi, je ne vois pas comment mettre plusieurs auto incréments sur la même table, enfin .. pour moi je n'y arrive pas. C'est pour ça que je pense qu'une revalorisation d'un auto incrément n'aurait pu être qu'utile.

Dans notre exemple, après le départ du numéro 23, le nouvel inscrit aurait pris encore la position 35, et non 36 ou 37 etc ...
Necnom :)
Necnom
le 14/07/2007 à 16:22
sujet délicat: auto incrément
Mais si quelqu'un désire faire un classement.
Par exemple la liste des élèves d'une classe. Chaque jour ça change, et chaque élève a une position. Le dernier élève à la position 34.
Un nouveau s'inscrit et a donc la position 35 ( auto incrément).
Et lorsqu'un élève démissionne ou part ou est viré, une réorganisation s'effectue. Si l'élève avait la position 23, celui qui avait la position 24 prend sa place, celui qui avait la position 25 prend la 24, la 26 devient 25 etc ...
Donc selon vous, il faudrait carément créer un autre champs ...
Necnom :)
Necnom
le 13/07/2007 à 19:15
sujet délicat: auto incrément
Bonjour, j'ai envie de reparler d'un sujet délicat puisque j'ai déjà remarqué que cette question chamboule les programmeurs "haut niveau".
Beaucoup se demandent comment faire pour qu'il n'y ait pas de trou dans le champs auto incrémenté, lorsque l'on supprime un élément d'une table.
Par exemple, certains utilisent la table suivante:
-------------------------
1- Lucas - seconde 8
2- Corinne - première L 3
4- Lucien - Terminale ES 1
-------------------------
Vous remarquez que la suppression d'un candidat ( le 3 ) ne reclasse pas l'auto incrément.

Donc les réponses sont souvent, "tu n'as pas compris le principe de l'auto incrément", "non, tu ne peux pas revaloriser ton auto incrément, ce n'est pas le but, tu n'as pas compris blablabla ..."
Certe, ce n'est pas peut-être pas l'objectif de l'auto incrément, mais ceci peut s'avérer quand même utile et je ne vois pourquoi autant critiquer ceux qui demandent et qui cherchent à enlever les trous.
----------------------------


Ps: je parlais des lieux de discussion en général smiley
Necnom :)
Necnom
le 06/07/2007 à 19:47
L'update ne m'aime pas
C'est bon, j'ai résolu le problème !
OUF...

J'avais oublié un "_"(underscore) dans une redéfinition de la variable.
Pfffff
Encore une erreur bêtesmiley ... J'espère qu'il y en aura plus, j'ai eu ma dose smiley

Merci !!!
Necnom :)
Necnom
le 06/07/2007 à 19:30
L'update ne m'aime pas
Surement pas au niveau du serveur ou autorisations. Quand je retire les variables et que je remplace le nom par Tibo et le numero par 7 ( par exemple), cela fonctionne. Je vais étudier les varibles.
Necnom :)
Necnom
le 06/07/2007 à 19:16
L'update ne m'aime pas
Merci Galawa :)

Mais le problème persiste. Pourtant, les DELETE et INSERT fonctionnent très-bien. Je me demande si ce n'est pas au niveau du serveur, ou des autorisations...
Necnom :)
Necnom
le 06/07/2007 à 17:04
L'update ne m'aime pas
Bonjour à tous :)

J'ai remarqué depuis plusieurs moment que j'ai des différents problème pour mettre à jour les information de mes tables de bdd par les updates. J'ai des cas parfois très étranges mais bon ... comme généralement je trouve toujours une explication logiqque et la solution ( après des heures de recherche ),tout fini par s'arranger.
Sauf cette fois-ci, je n'ai toujours pas compris pourquoi smiley.
J'essaye d'updater par le code suivant :
<?php 
if($acte == "modify") {

// lancement des requêtes et exécution
if ( $md_nom != $null) { $sql ='UPDATE disque_add SET nom="'.$md_nom.'" WHERE numero="'.md_numero.'"'; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); echo'sql1 réussi'; }
if ( $md_src_img != $null) { $sql2 ='UPDATE disque_add SET src_img="'.$md_src_img.'" WHERE numero="'.$md_numero.'"'; mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br />'.mysql_error()); echo'sql2 réussi'; }
if ( $md_com_fr != $null) { $sql3 ='UPDATE disque_add SET com_fr="'.$md_com_fr.'" WHERE numero="'.$md_numero.'"'; mysql_query($sql3) or die('Erreur SQL !'.$sql3.'<br />'.mysql_error()); echo'sql3 réussi'; }
if ( $md_com_en != $null) { $sql4 ='UPDATE disque_add SET com_en="'.$md_com_en.'" WHERE numero="'.$md_numero.'"'; mysql_query($sql4) or die('Erreur SQL !'.$sql4.'<br />'.mysql_error()); echo'sql4 réussi'; }

// je ferme la connexion à la base
mysql_close();

echo'Votre Disque a bien été modifié <br> <A HREF="javascript:history.go(-2)">retour</A>';

}

?>


J'ai rajouté les echos pour essayer de voir ou ça buggait. Mais les echos apparaissent tous !
Aussi, je n'ai aucune erreur SQL qui n'apparait sur la page web.
La requête semble avoir bien été effectuée.
Mais quand je vais vérifier le résultat, rien a changé. Rien a été modifié ...
--------------------
je me suis demandé si ce n'était pas à cause des variables ...
J'ai donc pour la première ligne retiré ces variables et placé des mots simple. Bizarrement, ça a fonctionné, la table a été modifié.
--------------------
J'ai bien vérifié et toutes les variables sont défines, donc, je ne comprends rien smiley
--------------------
j'au aussi essayé de mettre le code dans phpmyadmin et ça a fonctionné
smiley
------------------
Je n'aime pas dire ça, mais bon ... je ne comprends pas..
Si quelqu'un pouvait m'éclairer sur ce sujet, je vous prie ce serait sympa pour moi.



PS: J'espère que ce n'est pas une faute bête comme d'habitude ( hey oui; je suis déjà resté planté 3 heures parce que j'avais oublié un ">" smiley)
Necnom :)
LoadingChargement en cours