Peut on changer la valeur d'une variable sans changer le nom

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Peut on changer la valeur d'une variable sans changer le nom

par abricot » 10 janv. 2007, 13:46

Tres interessant je voyais pas ca comme ca! Effectivement ca peu être vraiment très utile si je fais reference à la formule de politesse!
Merci à tous pour toutes vos reactions!! Vous allez surement me revoir lol :shock:

par Ajoloca » 09 janv. 2007, 18:03

Re,

Dans certains cas, il est plus facile de retenir un nom qu'un chiffre, par exemple.

Dans d'autres, pour remplacer une longue chaine de texte, et beaucoup d'autres.

Deux exemples:
define('ERR_LECT', 2403); 
define('F_POLITESSE', 'Veuillez agréer, Madame, Monsieur, l\'expression de mes sentiments les plus distingués.');
Comme tu le vois, il est plus facile de se souvenir que le code erreur en lecture est ERR_LECT que de son code numérique.

Pour écrire ma formule de politesse, c'est plus facile F_POLITESSE que tout le reste.
Et cette formule sera toujours la même.

Une autre utilisation c'est l'internalisation, et beaucoup d'autres.

par Ultim4T0m » 09 janv. 2007, 17:57

Pour appeler une constante, il suffit de faire comme ça :
<?php

define('NOM', 'toto');

echo 'Mon '.NOM.' est toto';

?>
Elles peuvent par exemple servir pour les sites multilangue, ou encore définir des paramètres qui ne changent pas en début de script.

par fred9999 » 09 janv. 2007, 17:55

non en fait la constante session est enregistrée pour le temps de ta connexion.

tu peut la rappeler quand tu veut, mais tu peut aussi la modifier.

ex si ton utilisateur via un formulaire souhaite modifier son nom.

en fait les constantes sont modifiables (selon les cas !!) mais sont enregistrer pour ne pas avoir à les redéfinir.

j'espère avoir été assez précis et n'avoir pas dis trop de bétises au cas ou moi aussi je me ferais tailler les oreilles en pointes :lol:

par abricot » 09 janv. 2007, 17:53

mmh d'accord je comprend mieux! mais comment tu fais appels à ta constante après dans ton code? Personnellement je vois pas trop l'interet d'utiliser des constantes :shock: Mais c'est sans doutes à cause de mes faibles connaissances!

par Ajoloca » 09 janv. 2007, 17:45

Re,

En PHP, tout ce qui commence par $... c'est une variable et donc elle peut changer de valeur.

Une constante es définie comme ceci
define('MA_CONSTANTE', 1);
et tu ne pourras lui attribuer une autre valeur pendant la durée du script.

Re: Peut on changer la valeur d'une variable sans changer le

par Ryle » 09 janv. 2007, 17:41

Bonjour c'est encore moi :shock: *Je vois déjà Ryle venir me tirer les oreils*
Argh ! j'arrive trop tard, mais sinon crois bien que t'y aurais eu droit !! :twisted: ;)

par abricot » 09 janv. 2007, 17:41

Merci pour la précision! Variable peut changer, constante non! C'est rentré!

mais en pratique c'est plus compliqué, par exemple :

$var = "10"; // $var est une variable car sa valeur peut varier si je le desire à l'inverse de $prenom

$_SESSION['prenom'] = $_POST['prenom'];
$prenom = $_SESSION['prenom'];

qui elle ne peu pas changer? :shock:

par Ajoloca » 09 janv. 2007, 17:13

Re,

Si j'ai apporté cette précision, c'est que abricot semble vraiment débuter.
Et dans ces cas il vaut mieux donner les termes exacts,
'On doit prendre les bonnes habitudes des le début, après c'est trop tard'.

par fred9999 » 09 janv. 2007, 17:07

c'était pour le petit brin d'humour :oops: pas pour parler des constantes exemples constante de sessions ..... :lol:

par Ajoloca » 09 janv. 2007, 17:06

Bonjour,
sinon on les appelleraient pas variables mais fixes !!!
Ça s'appelle des constantes.

par abricot » 09 janv. 2007, 17:00

:shock:

Merci infiniment pour ta réponse, j'avais peur qu'il y ai des conflits! Mais toutes mes craintes sont appaisés lol!

par fred9999 » 09 janv. 2007, 16:58

salut

alors oui tu peut redéfinir la valeur de ta variable....
sinon on les appelleraient pas variables mais fixes !!! :lol:

Peut on changer la valeur d'une variable sans changer le nom

par abricot » 09 janv. 2007, 16:52

Bonjour c'est encore moi :shock: *Je vois déjà Ryle venir me tirer les oreils*
Je voudrais savoir si il est possible de changer la valeur d'une variable sans changer le nom de la variable, je vais vous donner pour exemple un bout de code que j'ai fais :

Code : Tout sélectionner

if ($_GET['form'] == "ok"){ $pseudo = $_POST['pseudo']; $mail = $_POST['mail']; $message = $_POST['message']; $query = mysql_query("SELECT message FROM livredor WHERE pseudo='$pseudo'"); $array = mysql_fetch_array($query); if ($message != $array['message']){ $query = mysql_query("INSERT INTO livredor (id, pseudo, mail, message) VALUES ('', '$pseudo', '$mail', '$message')") or die ("impossible d'écrire dans la BDD"); /* ici je re utilise $query en lui affectant une nouvelle valeure */ echo '<font face="comic sans ms" size="2"><b>Veuillez patienter...</b></font> <meta http-equiv="refresh" content="3;url='.$_SERVER['PHP_SELF'].'">'; exit(); } else{ echo '<font face="comic sans ms" size="2"> <b>Votre message figure déjà dans la base de donnée.</b></font> <meta http-equiv="refresh" content="3;url='.$_SERVER['PHP_SELF'].'">'; exit(); } }
Est-ce juste? Ou dois-je creer une nouvelle variable query?