Page 1 sur 1
Modifier la valeur numérique d'un champs de table (mysql)
Posté : 11 janv. 2007, 18:44
par France-Webmaster
Bonjour
Bon rassurez vous sa sera court (pas comme d'habitude)
Savez-vous seulement comment additionner la valeur d'un nombre insrit dans une table ?
Exemple :
nom | points
_____|_____
toto | 1
Comment additionner par exemple 500 à 1 dans la table, j'ai eu une illumination mais je ne sais pas si il y a plus simple...
afficher la valeur du champs, l'additionner, modifier le champs de la table ayant pour numero_client $numero_client
bon lidée est vague mais j'essay de faire de mon mieu... merci
Posté : 11 janv. 2007, 18:46
par Ryle
Tu peux faire cela directement dans ton update sans avoir à faire de select, de calcul et d'update
Posté : 11 janv. 2007, 19:03
par France-Webmaster
De ce façon ? :
$sql = UPDATE user
SET points = points + 123
WHERE numero_client="'.$numero_client.'"';
c'est bon ?
Pour trouver où numero_client est égal à $numero_client .... Est-ce bon ?
Posté : 11 janv. 2007, 19:06
par Ultim4T0m
...
C'est une requête SQL, n'oublie pas que c'est une chaine de caractère qu'il te faut. Si tu mets ca, je pense que tu obtiendras un beau message d'erreur.
$sql = "UPDATE user
SET points = points + 123
WHERE numero_client=".$numero_client;
Mais oui, c'est comme cela qu'il faut procéder
Edit : Dernière chose... Tu as encore de gros problèmes apparemment au niveau de la concaténation... Il va vraiment falloir que tu fasses quelque chose pour apprendre, ça te seras vraiment utile (on ne dit pas ça pour se moquer, ni même pour t'embêter, juste que ça semble indispensable)
Posté : 11 janv. 2007, 19:07
par Ryle
En dehors du fait qu'il te manque une apostrophe au début de ta chaine, ouep, c'est bon
Ceci dit, utilise plutôt des apostrophes pour délimiter les chaines dans ton sql plutôt que les guillemets :
$sql = "UPDATE user
SET points = points + 123
WHERE numero_client='".$numero_client."'";
MySQL tolère les guillemets, mais ce n'est pas pour autant que c'est correct, et vaut mieux perdre cette habitude assez tôt car aucun autre SGBD n'en voudra

Posté : 11 janv. 2007, 21:37
par France-Webmaster
Merci j'ai un message d'erreur mais sa fonctionne quand même, comment faire pour supprimer le message ?
Situation :
Il y a une page avant (page1), qui redirige vers celle-ci (page2) elle met la variable $numero_client en session.
Le code de la page 2 :
<?php
session_start();
$numero_client = $_SESSION['numero_client'];
{
$db = mysql_connect('sql.free.fr', 'info.aqua', '***') or die('Erreur de connexion '.mysql_error());
mysql_select_db('info.aqua',$db) or die('Erreur de selection '.mysql_error());
$sql = "UPDATE user SET points = points + 120 WHERE numero_client='".$numero_client."'";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
mysql_close();
}
?>
message d'erreur :
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/112/sdb/0/2/info.aqua/444bcb3a3fcf8389296c49467f27e1d6.php:6) in /mnt/112/sdb/0/2/info.aqua/444bcb3a3fcf8389296c49467f27e1d6.php on line 521
Posté : 11 janv. 2007, 21:56
par Truc
Posté : 11 janv. 2007, 22:13
par France-Webmaster
Si mais il y avait pas les même mot dans le message d'erreur...
Merci, je suis aller sur un sujet, et l'erreur provennait du html, du html avant le php ma créer cette erreur, donc je ne suis encore jamais tmbé sur cette erreur mais un autre qui se ressemble. Merci, ce sujet est résolu
D'ailleur j'y pense il n'existe pas un livre qui ne parle SEULEMENT d'erreur PHP débutant ?
Ou même un site, article... bref un texte... merci
Posté : 11 janv. 2007, 23:43
par Xenon_54
Posté : 12 janv. 2007, 00:12
par Ultim4T0m
Ca fait la combientième fois que quelqu'un te propose un lien vers
www.phpdebutant.org ?

Posté : 12 janv. 2007, 00:37
par Xenon_54
Je vais imprimer la page de ce site et faire relier le tout.
Peut-être qu'il veut absolument un livre.
Posté : 12 janv. 2007, 00:45
par Ajoloca
Ton nom et ton prénom, tu sais l'écrire sans aucune erreur, tu le connais par coeur,
tu devrais faire la même chose avec le contenu de ce site, ça t'éviterait pas mal de soucis.