Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/05/2011, 20h14   #1
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
Par défaut Requetes SQL UPDATE sur deux table.

Bonsoir,
J'aimerai savoir si c'est possible de faire un UPDATE sur deux tables en même temps.
Je m'explique: je pssede deux tables, une "favoris" et une autre "membre", la première contient les attributs "pseudo" et "id_hotel" et la deuxième les attributs "pseudo", "nom", "prénom", "@mail" etc...
Je vaudrai que l'utilisateur de mon site change son pseudo à volonté, le hic c'est que faire un UPDATE sur une seul table sa je sais faire, mais sur deux tables simultanément .
Si quelqu'un a une idée je suis preneur.
MERCI
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 20h23   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
C'est une mauvaise ID de ne pas avoir de clef.
Si ta clef change, ce n'est plus vraiment une clef.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 20h28   #3
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
si j'ai une clef primaire dans les deux tables, elle s'appel "id".
voici en attache deux capture des deux tables.
Images attachées
Type de fichier : png favoris.PNG (3,2 Ko, 2 affichages)
Type de fichier : png membre.PNG (9,3 Ko, 1 affichages)
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 20h48   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu ne dois pas avoir le pseudo dans plusieurs table alors
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 20h51   #5
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
Et pourquoi je ne dois pas avoir le pseudo dans plusieurs table ??
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 20h55   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Parce que c'est comme ca que fonctionnent les bases de données relationnelles.
Parce sinon, quand tu changes le pseudo, tu dois mettre a jour tous les champs de toutes les tables ou il est stocké.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 21h00   #7
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
Et comment faire alors
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 21h14   #8
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
dans ta table favoris, tu stockes l'id de l'utilisateur et non son pseudo.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 00h42   #9
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
Admettant que j'ai un script de cette forme la
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
 
   $base = mysql_connect ('localhost', 'root', ''); 
   mysql_select_db ('test', $base) ; 
 
 
   $sql = 'SELECT id, nom_hotel, cara_hotel, adr_hotel, tel_hotel, prix_ch, sit_hotel FROM hotels WHERE id="'.$_GET['id_hotel'].'"' ; 
 
 
   $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
   $data = mysql_fetch_array($req);
   echo htmlentities(trim($data['nom_hotel']));
   echo '<br />';
   echo htmlentities(trim($data['cara_hotel']));
   echo '<br />';
   echo htmlentities(trim($data['adr_hotel']));
   echo '<br />';
   echo htmlentities(trim($data['tel_hotel']));
   echo '<br />';
   echo htmlentities(trim($data['prix_ch']));
   echo '<br />';
   echo htmlentities(trim($data['sit_hotel']));
   echo '<a href="ajouterfav.php?id_hotel=' . $data['id']  . '">Favori</a>';
   mysql_free_result ($req);
   mysql_close ();
   ?>
ou je peut mettre id de l'utilisateur pour le faire passé dans le lien, pour que le formulaire qui traite les favoris puise le stocké dans la base avec l'id de l'hôtel.

Script formulaire ajouterfav.php:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
    session_start();  
    if (!isset($_SESSION['pseudo'])) { 
       header ('Location: index.php'); 
       exit();  
    } 
 
    ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<?php
 
   $base = mysql_connect ('localhost', 'root', ''); 
   mysql_select_db ('test', $base) ; 
   $sql = 'INSERT INTO favoris VALUES("","'.mysql_real_escape_string($_SESSION['pseudo']).'", "'.intval($_GET['id_hotel']).'")';
   $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
 
   ?>
<body>
</body>
</html>
MERCI
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 00h48   #10
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
L'id de l'utilisateur doit etre en session comme le pseudo.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 00h52   #11
Invité régulier
 
Homme amine korteby
Étudiant
Inscription : avril 2011
Messages : 68
Détails du profil
Informations personnelles :
Nom : Homme amine korteby
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 68
Points : 9
Points : 9
Donc je fait comme ceci:
Code :
1
2
3
4
5
session_start();  
    if (!isset($_SESSION['id_utili'])) { 
       header ('Location: index.php'); 
       exit();  
    }
MERCI
makamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h53.


 
 
 
 
Partenaires

Hébergement Web