begin process at 2012 05 30 16:58:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Bases de données

 > 

[MySQL]Peut-on mettre une condition IF dans un UPDATE?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[MySQL]Peut-on mettre une condition IF dans un UPDATE?

dimanche 1 août 2004 à 11:25:12 | [MySQL]Peut-on mettre une condition IF dans un UPDATE?

shidame

Bonjour,
Je suis actuellement sur la programation d'un jeu de rôle en ligne, et chaque joueur possède des PA (Point d'action), il faut que leur PA respectif augmente de 1 toute les 6min.
Cependant il y a un max de PA possible- pas plus de 240 - et ce même si 3 semaine ce sont écoulées.
Cette dernière volonté (^^), exige un SELECT avant mon UPDATE, je voulai savoir s'il est possible de faire autrement juste avec un UPDATE (condition IF dans un UPDATE ôO )
Voila la fonction que j'utilise :

function Update_PA ($userID) {
$Duree_1Tour = 360; //Duré d'un Tour en seconde
$Gain_1Tour = 1; //PA par Tour

mysql_connect('localhost','root','')
or die ('impossible de se connecter');
mysql_select_db('loe')
or die ('impossible de trouver la base');

$sql = "SELECT Tour,PA FROM caracteristique WHERE userID='$userID'";
$req = mysql_query($sql) or die ('erreur <br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_array($req);
if (isset($data[0])) {
$Date_Actuel = time();
$Nb_Tour = floor(($Date_Actuel-$data[0]) / $Duree_1Tour);

$New_PA = $data[1]+$Nb_Tour*$Gain_1Tour;
$New_Tour = $data[0]+($Nb_Tour*$Duree_1Tour);

if ($New_PA >= 240) {
$New_PA = 240;$New_Tour=$Date_Actuel;
}

$sql = "UPDATE caracteristique SET PA=$New_PA, Tour=$New_Tour WHERE userID='$userID'";
$req = mysql_query($sql) or die ('erreur <br>'.$sql.'<br>'.mysql_error());
}
mysql_close();
}

Merci d'avance
dimanche 1 août 2004 à 22:42:51 | Re : [MySQL]Peut-on mettre une condition IF dans un UPDATE?

Psy

Slt,
Nan le IF dans un UPDATE n'est pas possible : normal, IF ne correspond pas à du mysql mais a un langage propre (PHP dans ton cas) ;)

- Psy -
dimanche 1 août 2004 à 22:45:42 | Re : [MySQL]Peut-on mettre une condition IF dans un UPDATE?

shidame

Je sais cependant il existe un IF dans les SELECT il me semble...
Merci quand meme je vais faire sans^^
lundi 2 août 2004 à 08:49:25 | Re : [MySQL]Peut-on mettre une condition IF dans un UPDATE?

HFanny

Réponse acceptée !
Bonjour,

pourquoi tu n'utiliserais pas plutôt une deuxième condition dans ton WHERE ?

UPDATE caracteristique SET PA=$New_PA, Tour=$New_Tour WHERE userID='$userID' AND PA < 240

Comme ça tu ne mets à jour que les personnes qui ont un PA inférieur à 240, ce qui revient au même qu'un IF.

Fanny
lundi 2 août 2004 à 15:49:05 | Re : [MySQL]Peut-on mettre une condition IF dans un UPDATE?

shidame

Merci Fanny je vais faire comme ca^^


Cette discussion est classée dans : mysql, pa, sql, tour, update


Répondre à ce message

Sujets en rapport avec ce message

WHERE et UPDATE [ par shadow1779 ] Bonjour,quelqu'un pourrait t'il m'aider, j'essai de faire des requetes SQL suivantes, mais celles ci ne marchent pas:mysql_query("SELECT * FROM login existence de donnée dans base de donnée [ par gabs77 ] Bonjour, j'ai 2 pb dans un premier temps, j'aimerais enregistrer dans une base de donnée un champet pour une meme donnée g 2 possibilité liste déroula probleme d'inscription [ par jojo403 ] Bonsoir, voici mon script : // serveur$sql_serveur="localhost";// login$sql_user="root";// pass$sql_passwd="";// bdd$sql_bdd="enjoy";// Et on se conne Menu deroulant! je suis tres étonné [ par rachidphp93 ] Bonjour tt le monde,voila je suis débutant en php, j'ai essayé de créer un menu déroulant que j'alimente depuis une base de donnée. le problème c'est Je vais péter un plomb : Parse error [ par Tupac59 ] Voila mon problème, mon code fait 64 lignes html compris et lorque j'essai de lancer ma page avec easy php j'ai ce message : Parse error: parse error requete SQL [ par dgdg ] Salut à tous !j ai un petit probje cherche à modifier toute une table avec une requête dans un FOR ... genre : for($i=0;iif(exp...){$sql="UPDATE categ aaaahh ça m'enerve !! put*** de fonction [ par joebuz ] j'essaye de generer un arbre genealogique ascendant d'une personne $idcomment je pourrais faire pour faire la meme chose que le script d'en bas mais s erreur sql que je n'arrive pas a resoudre [ par jimmypage64 ] Voici l'erreur que me renvoie mySql :Erreur SQL !UPDATE Topics SET CptSuj='1', CptPost='2',DateDerPost='10/05/2006', HeureDerPost='11:55', AutDerPost= parse error [ par Bartheleway ] Voilà, je vous donne ma source. J'ai apparament un problème de programmation !!!  <meta content="text/html; cha Prolème chez online [ par programmationniste ] Salut tout le monde,je viens de terminer les tests chez moi de mon site, et en montant le tout sur mon hébergeur, la commuication entre la base et l'a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales