PHP/MYSQL : récupérer les infos issues d'une requête
PHP/MYSQL : récupérer les infos issues d'une requête - SQL/NoSQL - Programmation
MarshPosté le 08-03-2012 à 09:29:01
Bonjour,
Je ne suis pas pro de SQL, et je patauge depuis quelques jours , j'espère que vous pourrez m'aider Voilà, je voudrais mettre à jour un compteur avec une valeur extraire d'une autre table : nv compteur = ancien compteur + point
Je fais une requête sur 2 tables : table Membres => compteur (tab_membres.ch_mem_compteur) et table Ponits => point (tab_points.ch_poi_point) Ensuite je veux mettre à jour la table Membres avec le nouveau compteur
J'ai un formulaire d'inscription où un membre peut renseigner le nom d'un parrain Si le champ parrain existe, il faut affecter au compteur du parrain les points correspondant à l’action de parrainage
Voilà ma requête SQL qui récupère les bonnes infos dans ma base, mais après je ne sais pas comment faire : //Fonction Attribution des points pour le membre parrain $parrain_rsPseudoParrain = "-1"; $action_rsPseudoParrain = "-1"; if ((isset($_POST['ch_mem_parrain'])) && (isset($_POST["actionPoints"])) && ($_POST["actionPoints"] == 50)) { $parrain = $_POST['ch_mem_parrain']; $rsParrain = 'SELECT count(*) FROM tab_membres WHERE ch_mem_parrain ="'.mysql_escape_string($parrain).'"'; mysql_select_db($database_comsite, $comsite); $result = mysql_query($rsParrain, $comsite) or die (mysql_error()); $data = mysql_fetch_array($result); mysql_free_result ($result); if ($data[0] == 1) { // le membre parrain existe dans la base $parrain_rsPseudoParrain = $_POST['ch_mem_parrain']; $action_rsPseudoParrain = $_POST['actionPoints']; } //On récupère l'info sur les points attribués en focntion du niveau du membre et de l'action mysql_select_db($database_comsite, $comsite); $query_rsPseudoParrain = sprintf("SELECT tab_membres.ch_mem_pseudo, tab_membres.ch_mem_niveau, tab_membres.ch_mem_compteur, tab_points.ch_poi_action, tab_points.ch_poi_niveau, tab_points.ch_poi_point FROM tab_membres, tab_points WHERE tab_membres.ch_mem_pseudo=%s AND tab_points.ch_poi_code=%s AND tab_membres.ch_mem_niveau=tab_points.ch_poi_niveau", GetSQLValueString($parrain_rsPseudoParrain, "text" ),GetSQLValueString($action_rsPseudoParrain, "int" )); $rsPseudoParrain = mysql_query($query_rsPseudoParrain, $comsite) or die(mysql_error()); $row_rsPseudoParrain = mysql_fetch_assoc($rsPseudoParrain); $totalRows_rsPseudoParrain = mysql_num_rows($rsPseudoParrain);
Marsh Posté le 08-03-2012 à 09:29:01
Bonjour,
Je ne suis pas pro de SQL, et je patauge depuis quelques jours , j'espère que vous pourrez m'aider
Voilà, je voudrais mettre à jour un compteur avec une valeur extraire d'une autre table : nv compteur = ancien compteur + point
Je fais une requête sur 2 tables : table Membres => compteur (tab_membres.ch_mem_compteur) et table Ponits => point (tab_points.ch_poi_point)
Ensuite je veux mettre à jour la table Membres avec le nouveau compteur
J'ai un formulaire d'inscription où un membre peut renseigner le nom d'un parrain
Si le champ parrain existe, il faut affecter au compteur du parrain les points correspondant à l’action de parrainage
Voilà ma requête SQL qui récupère les bonnes infos dans ma base, mais après je ne sais pas comment faire :
//Fonction Attribution des points pour le membre parrain
$parrain_rsPseudoParrain = "-1";
$action_rsPseudoParrain = "-1";
if ((isset($_POST['ch_mem_parrain'])) && (isset($_POST["actionPoints"])) && ($_POST["actionPoints"] == 50))
{
$parrain = $_POST['ch_mem_parrain'];
$rsParrain = 'SELECT count(*) FROM tab_membres WHERE ch_mem_parrain ="'.mysql_escape_string($parrain).'"';
mysql_select_db($database_comsite, $comsite);
$result = mysql_query($rsParrain, $comsite) or die (mysql_error());
$data = mysql_fetch_array($result);
mysql_free_result ($result);
if ($data[0] == 1)
{ // le membre parrain existe dans la base
$parrain_rsPseudoParrain = $_POST['ch_mem_parrain'];
$action_rsPseudoParrain = $_POST['actionPoints'];
}
//On récupère l'info sur les points attribués en focntion du niveau du membre et de l'action
mysql_select_db($database_comsite, $comsite);
$query_rsPseudoParrain = sprintf("SELECT tab_membres.ch_mem_pseudo, tab_membres.ch_mem_niveau, tab_membres.ch_mem_compteur, tab_points.ch_poi_action, tab_points.ch_poi_niveau, tab_points.ch_poi_point FROM tab_membres, tab_points WHERE tab_membres.ch_mem_pseudo=%s AND tab_points.ch_poi_code=%s AND tab_membres.ch_mem_niveau=tab_points.ch_poi_niveau", GetSQLValueString($parrain_rsPseudoParrain, "text" ),GetSQLValueString($action_rsPseudoParrain, "int" ));
$rsPseudoParrain = mysql_query($query_rsPseudoParrain, $comsite) or die(mysql_error());
$row_rsPseudoParrain = mysql_fetch_assoc($rsPseudoParrain);
$totalRows_rsPseudoParrain = mysql_num_rows($rsPseudoParrain);