Voila , j'ai une table mysql et j'aimerais que les champs Attaque et Défense soit égal à l 'addition de 5 autres champs est ce que c'est possible ??
Ma Table Mysql Venez voir c'est mieu !
#1
Posté 10 juin 2004 - 11:04
Voila , j'ai une table mysql et j'aimerais que les champs Attaque et Défense soit égal à l 'addition de 5 autres champs est ce que c'est possible ??
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#4
Posté 10 juin 2004 - 16:29
J espère que l'on a droit à mettre des images
Fichier(s) joint(s)
-
table.gif (63,56 Ko)
Nombre de téléchargements : 91
Ce message a été modifié par Anonymus - 10 juin 2004 - 16:44.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#5
Posté 10 juin 2004 - 16:49
Il est clair que Php peut automatiser cela... mais pas besoin de stocker ces valeurs , ni de les calculer à la main.
En Php tu peux assigner à une variable $attaque une valeur égale à la somme de 5 champs , idem pour $defense.
Dan
Si la pratique et la théorie sont réunies, rien ne fonctionne et on ne sait pas pourquoi. - Albert Einstein -
Infogérance de serveurs dédiés OVH
#6
Posté 10 juin 2004 - 16:53
SELECT champ1+champ2+champ3+champ4+champ5 AS nouveau_nom FROM table
Le AS permet de renommer le nouveau champ.
Lorsque tu inclus les champs, tu additionnes les valeurs que tu veux ,et tu les ajoutes au champ Attaque.
Exemple :
$query ="INSERT INTO table(champ1,champ2,champ3,champ4,champ5,attaque)
VALUES ('valeur_champ1','valeur_champ2','valeur_champ3','valeur_champ4',' valeur_champ5',
'".$champ1+$champ2+$champ3+$champ4+$champ5."'";
Bon.. Y doit y avoir des erreurs, mais sinon, c'est ca, tout simplement.
#7
Posté 10 juin 2004 - 16:58
http://managerattitu...ee.fr/notes.php
Ou je rentre ce que tu m'a donné dans le Mysql de free
SVP
$attaque ="INSERT INTO table(Passe, Tacle, Tete, Vitesse, Physique )
VALUES ('valeur_champ1','valeur_champ2','valeur_champ3','valeur_champ4',' valeur_champ5',
'".$champ1+$champ2+$champ3+$champ4+$champ5."'";
Ce message a été modifié par Total Manager - 10 juin 2004 - 17:04.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#9
Posté 10 juin 2004 - 17:07
Le code que t'a donné Anonymus est à rentrer dans ta page php.
Et pour faire une moyenne de 6 variables on divise la somme par 6, pas par 7
$ma_moyenne=($var1+$var2+$var3+$var4+$var5+$var6)/6;
Si tu hésites pour cela, je te recommande de découvrir le php avec les articles du Hub: http://www.webmaster...rubrique17.html
Dan
Si la pratique et la théorie sont réunies, rien ne fonctionne et on ne sait pas pourquoi. - Albert Einstein -
Infogérance de serveurs dédiés OVH
#10
Posté 10 juin 2004 - 17:13
Ou c'est que je peut avoir une bann 80 * 30 de votre Site ?? Svp
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#11
Posté 10 juin 2004 - 18:59
<?
if(!$mode)
{
print'Bienvenue dans le système Notes on-line<br>Rentrer ici le mot de passe administrateur<br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="password" name="pass"> <input type="submit" name="Submit" value="Suite"></form>';
}
elseif($_POST[mode]==1 and md5($_POST[pass])=='c4f2bc55383c55b76ed5d24018e11819')
{
print'<form method="post" action="notes.php"><input type="hidden" name="mode" value="2">Nom du joueur : <input type="text" name="nom"><br>
Prénom du joueur : <input type="text" name="prenom"><br>
Poste du joueur (GB,DF,MT,AT) : <input type="text" name="poste"><br>
Club : <input type="text" name="club"><br>
Attaque :<input type="text" name="attaque"><br>
Défense :<input type="text" name="defense"><br>
Tacles : <input type="text" name="tacles"><br>
Physique : <input type="text" name="physique"><br>
Vitesse : <input type="text" name="vitesse"><br>
Flair : <input type="text" name="flair"><br>
Passe : <input type="text" name="passe"><br>
Tirs :<input type="text" name="tir"><br>
Interventions : <input type="text" name="sorties"><br>
Prise de Balle :<input type="text" name="prise"><br>
Tête : <input type="text" name="tete"><br>
Technique :<input type="text" name="controle"><br>
Dribble :<input type="text" name="dribble"><br>
Technique CF:<input type="text" name="CF"><br>
Technique Goal : <input type="text" name="techniquegoal"><br>
Réflexes : <input type="text" name="reflexe"><br><input type="submit" name="Submit" value="Suite"></form>';
}
elseif($_POST[mode]==2)
{
$req=mysql_connect('sql.free.fr',XXXXXXX,XXXXXXXX) or die ("erreur de connexion 1");
mysql_select_db(XXXXXXXX,$req) or die ("erreur de connexion réessayer plus tard");
$r2=mysql_query("SELECT * FROM joueurs where nom='$nom' and prenom='$prenom'");
$nb=mysql_num_rows($r2);
if($nb!='0')
{
print'Ce joueur a déjà été rentré dans la base';
}
else
{
mysql_query("INSERT INTO joueurs VALUES('$nom','$prenom','$poste','$club','
$attaque','$defense','$tacles','$physique','$
vitesse','$flair','$passe','$tir','$sorties','
$prise','$tete','$controle','$dribble','$CF'
,'$techniquegoal','$reflexe')");
print'Le joueur a été rentré dans la base <br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="hidden" name="pass" value="tmcfort"> <input type="submit" name="Submit" value="Rentrer un autre joueur"></form>';
}
}
else
{
print'Votre mot de passe n\'est pas bon , veuillez le recésir . Sinon vous n\' avez rien à faire sur cette page';
}
?>
Ce message a été modifié par Dan - 11 juin 2004 - 06:58.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#12
Posté 11 juin 2004 - 06:48
Citation
{
print'Votre mot de passe n\'est pas bon , veuillez le recésir . Sinon vous n\' avez rien à faire sur cette page';
}
D'autant qu'elle ne permet pas de retourner sur la page en question. Il n'y a pas de bouton 'retour' ou autre.
'recésir" s'écrit : "ressaisir".
Voilà,
Anonymus.
#13
Posté 11 juin 2004 - 11:03
Je rentre 20 en Tir
Et quand je vais pour voir la note ya marqué 20 en Technique
Comment je fait :lol
Ce message a été modifié par Total Manager - 11 juin 2004 - 14:07.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#14
Posté 12 juin 2004 - 08:07
mysql_query("INSERT INTO joueurs VALUES('$nom','$prenom','$poste','$club','
$attaque','$defense','$tacles','$physique','$
vitesse','$flair','$passe','$tir','$sorties','
$prise','$tete','$controle','$dribble','$CF'
,'$techniquegoal','$reflexe')");
print'Le joueur a été rentré dans la base <br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="hidden" name="pass" value="tmcfort"> <input type="submit" name="Submit" value="Rentrer un autre joueur"></form>';
tu mets les valeurs dans un certain ordre.
Dans le plan de la table que tu donnes, les valeurs sont dans un ordre différent, d'où ton bug.
IL y a d'ailleurs pas mal de valeurs qui sont inversées, dans ton 'INSERT'.
Anonymus.
#15
Posté 12 juin 2004 - 11:32
J'ai regardé ma table et les valeurs sont insérés pas dans les bons champs c'est pour ca je crois
Voila j'ai changé l'ordre d'apparition des $champ comme tu me l'avais dit maintenant je vais tester le bon fonctionnement
Ce message a été modifié par Total Manager - 12 juin 2004 - 11:39.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#16
Posté 12 juin 2004 - 14:08
<?
$temp=$flair+$passe+$tir+$CF+$dribble+$tete+$controle;
$defense=$tete+$tacles+$passe+$vitesse+$physique;
$attaque=$temp/1.4;
$gardien=$sorties+$prise+$techniquegoal+$reflexe+$vitesse
?>
<?
if(!$mode)
{
print'Bienvenue dans le système Notes on-line<br>Rentrer ici le mot de passe administrateur<br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="password" name="pass"> <input type="submit" name="Submit" value="Suite"></form>';
}
elseif($_POST[mode]==1 and md5($_POST[pass])=='c4f2bc55383c55b76ed5d24018e11819')
{
print'<form method="post" action="notes.php"><input type="hidden" name="mode" value="2">Nom du joueur : <input type="text" name="nom"><br>
Prénom du joueur : <input type="text" name="prenom"><br>
Poste du joueur (GB,DF,MT,AT) : <input type="text" name="poste"><br>
Club : <input type="text" name="club"><br>
Tacles : <input type="text" name="tacles"><br>
Physique : <input type="text" name="physique"><br>
Vitesse : <input type="text" name="vitesse"><br>
Flair : <input type="text" name="flair"><br>
Passe : <input type="text" name="passe"><br>
Tirs :<input type="text" name="tir"><br>
Interventions : <input type="text" name="sorties"><br>
Prise de Balle :<input type="text" name="prise"><br>
Tête : <input type="text" name="tete"><br>
Technique :<input type="text" name="controle"><br>
Dribble :<input type="text" name="dribble"><br>
Technique CF:<input type="text" name="CF"><br>
Technique Goal : <input type="text" name="techniquegoal"><br>
Réflexes : <input type="text" name="reflexe"><br><input type="submit" name="Submit" value="Suite"></form>';
}
elseif($_POST[mode]==2)
{
$req=mysql_connect('sql.free.fr','LOGIN','MOTDEPASSE') or die ("erreur de connexion 1");
mysql_select_db('managerattitudes',$req) or die ("erreur de connexion réessayer plus tard");
$r2=mysql_query("SELECT * FROM joueurs where nom='$nom' and prenom='$prenom'");
$nb=mysql_num_rows($r2);
if($nb!='0')
{
print'Ce joueur a déjà été rentré dans la base';
}
else
{
mysql_query("INSERT INTO joueurs VALUES('$nom','$prenom','$poste','$club','
$attaque','$defense','$tacles','$physique','$
vitesse','$tir'','$passe','$controle','$flair'
,'$prise','$tete,'$sorties','$dribble','$CF'
,'$techniquegoal','$reflexe','$gardien')");
print'Le joueur a été rentré dans la base <br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="hidden" name="pass" value="tmcfort"> <input type="submit" name="Submit" value="Rentrer un autre joueur"></form>';
}
}
else
{
print'Votre mot de passe n\'est pas bon , veuillez le ressaisir . Sinon vous n\' avez rien à faire sur cette page';
}
?>
Je comprend pas pkoi ca ne rentre aucun joueur dans la BDD
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#18
Posté 12 juin 2004 - 14:26
C'est dans ma page PHP que ça foire alors je regarde attends
Bon je comprend pas la alors , j'ai 21 champs dans ma TABLE
Je comprend pas ou est le problème tu voit toi Anonymous ??
Ce message a été modifié par Total Manager - 12 juin 2004 - 14:40.
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !
#19
Posté 12 juin 2004 - 14:41
else
{
mysql_query("INSERT INTO joueurs VALUES('$nom','$prenom','$poste','$club','
$attaque','$defense','$tacles','$physique','$
vitesse','$tir'','$passe','$controle','$flair'
,'$prise','$tete,'$sorties','$dribble','$CF'
,'$techniquegoal','$reflexe','$gardien')");
print'Le joueur a été rentré dans la base <br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="hidden" name="pass" value="tmcfort"> <input type="submit" name="Submit" value="Rentrer un autre joueur"></form>';
}
tu mets :
$query = "INSERT INTO joueurs VALUES('$nom','$prenom','$poste','$club','
$attaque','$defense','$tacles','$physique','$
vitesse','$tir'','$passe','$controle','$flair'
,'$prise','$tete,'$sorties','$dribble','$CF'
,'$techniquegoal','$reflexe','$gardien')";
$r = mysql_query($query);
echo "<br>query : ".$query;
echo"<br> result : ".$r;
echo"<br>";
print'Le joueur a été rentré dans la base <br><form method="post" action="notes.php"><input type="hidden" name="mode" value="1"><input type="hidden" name="pass" value="tmcfort"> <input type="submit" name="Submit" value="Rentrer un autre joueur"></form>';
}
Il va s'afficher une requète sql, qu'il te faut insérer dans le phpmyadmin. Là, tu auras la réponse au problème. Mais il peut y avoir plusieurs raisons. Par exemple, si la personne s'appelle :
Joe L'emmerdeur
alors l'apostrophe fera 'bugger' la requète. L'idéal est de mettre des slashes devant toutes les apostrophes. Tu as une fonction qui le fait très bien, c'est addslashes();
Il te faudrait aussi vérifier un tant soi peu tes variables. Là, tu les récupères telles quelles, et tu les insères dans la base. Mais rien ne te dit qu'un joueur n'ira pas entrer des données.. pirates.
Prends toujours un maximum de précautions lorsque tu laisses un internaute entrer du code dans ton application.
Pour tester si un chiffre est un chiffre, par exemple :
$un_million = (int)$un_million;
Là, tu es sûr que ton million n'est pas un 'string' ou un 'array', etc...
Voilà.
#20
Posté 12 juin 2004 - 14:53
query : INSERT INTO joueurs VALUES('Dxxx','Didier','AT','Marseille','72.857142857143',' 63','7','14','15','17'','14','17','15' ,'4','13,'4','18','8','4','4','31')
result :
Le joueur a été rentré dans la base
Je rentre
INSERT INTO joueurs VALUES('Dxxx','Didier','AT','Marseille','72.857142857143'
,'63','7','14','15','17'','14','17','15'
,'4','13,'4','18','8','4','4','31')
ca dans ma table Mysql à chaque fois ?
Règle 2 : Quand on est pas d'accord avec le chef se réferer à la règle 1 !




Haut













