Apprendre comment créer un site Web pour les débutants


Gamme cours gratuit en HTML XHTML CSS et PHP

Recherche personnalisée

Site optimisé pour Firefox - Navigateur Internet gratuit

New Year's Web Hosting



Annuaire Webmaster

Modifier des données de votre base

Reprenons les deux tables que nous étudions depuis le début des tutoriaux sur les bases de données.
Voyons, en SQL tout d'abord comment modifié une entrée de la table liste_proprietaire. Supposons que Dubois vienne de changer son numéro de portable (et que son nouveau numéro est : 06-44-77-11-02),
il faudra alors faire la modification dans la base de données afin que ancien numéro soit remplacé par le nouveau.
On aura alors :
UPDATE liste_proprietaire SET telephone="06-44-77-11-02" WHERE nom="Dubois";
On modifie liste_proprietaire.

On modifie l'attribut telephone (qui prendra la valeur 06-44-77-11-02).

On modifie le(s) entrée(s) où l'attribut nom prend la valeur Dubois (dans notre cas, seul une entrée sera modifié car notre table une seule entrée où l'attribut nom prend la valeur Dubois).
En revanche, notez bien que dans notre clause WHERE, nous n'avons mis qu'une seule condition. Bien évidemment, tout est possible, vous pouvez en mettre plusieurs (ainsi que des clauses utilisant le LIKE vu dans les tutoriaux précédents).
Tout dépend des entrées que vous voulez modifier.
Cependant, imaginons que nous désirons modifier plusieurs attributs d'une même entrée.
En effet, supposons alors que nous possédons dans notre base de données une table ressemblant à la table liste_proprietaire (que nous avons déjà étudié), mais qui comportera plus d'attributs, comme par exemple l'adresse du propriétaire ainsi que son âge.
On pourrait alors très bien avoir une table ressemblant à ceci :
Nom N. tél Adresse Age
3 Dubois 06-44-77-11-02 2,rue des entrée 66
Supposons alors que l'on se soit trompé dans l'age de Dubois et qu'au lieu d'avoir 66 ans (il n'est pas si vieux que ça notre Dubois !), et bien, il a tout simplement 65 ans :
Supposons également que l'adresse de Dubois soit erronée et qu'il n'habite pas 2 rue des entrée, mais 3 rue des entrée.
On aura alors :
UPDATE liste_proprietaire SET adresse="3, rue des entrée", age="65" WHERE nom="Dubois";
On remarque alors qu'il suffit de séparer les diverses modifications opérées sur un même entrée par une simple virgule.
Voyons maintenant comment effectuer ces modifications dans une page PHP.
Pour ce faire, prenons notre deuxième modification, celle concernant l'adresse et l'age de Dubois.
On aura alors :
Code PHP :
<?php
// on se connecte à notre base
$base = mysql_connect ('serveur', 'login', 'pass');
mysql_select_db ('ma_base', $base) ;
?>
<html>
<head>
<title>Modification du tél et de l'adresse de Dubois</title>
</head>
<body>
<?php
// lancement de la requête
$sql ='UPDATE liste_proprietaire SET adresse="3, rue des entrée", age="65" WHERE
nom="Dubois"';
// on exécute la requête (mysql_query) et on affiche un message au cas où la requête ne
se passait pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base
mysql_close();
?>
L'adresse et l'age de Dubois viennent d'être modifiés. 
</body>
</html>
En effet, les modifications peuvent être vraiment dangereuses pour votre base de données.
En effet, si vous ne prenez pas un minimum de précaution pour effectuer vos modifications, vous pouvez très bien modifier un entrée d'une table et perde en même temps la jointure avec une autre table.
En effet, nous savons que nos tables liste_disque et liste_proprietaire sont liées par l'intermédiaire du numéro de propriétaire (la jointure).
Ceci implique donc que si pour une raison ou pour une autre, nous sommes amené à modifier ce numéro (dans la table liste_proprietaire par exemple), il faudra également penser à faire la modification de ce même numéro dans l'autre table (liste_disque) afin que la jointure entre les deux tables soit toujours fonctionnelle.

Et bien comme dans les tutoriaux précédents, vous pouvez effectuer les modifications des entrées par le biais de formulaires.
Par exemple, supposons que l'on dispose d'un page WEB comportant un formulaire disposant des champs suivants :
- un menu déroulant (de NAME proprio) permettant de choisir le nom d'un propriétaire.
- un champ texte classique (de NAME nouvelle_adresse) permettant à l'utilisateur de saisir une nouvelle adresse pour le propriétaire sélectionne dans le menu déroulant
Supposons ensuite que ce formulaire a pour balise ACTION la page traitement.php qui nous permet de modifier l'adresse du propriétaire en question.
On aura alors le code suivant (pour la page traitment.php) :
Code php :
<?php
// on se connecte à notre base
$base = mysql_connect ('serveur', 'login', 'pass');
mysql_select_db ('ma_base', $base) ;
?>
<html>
<head>
<title>Modification de l'adresse d'un propriétaire</title>
</head>
<body>
<?php
// on teste si les variables du formulaire sont déclarées
if (isset($_POST['nouvelle_adresse']) && isset($_POST['proprio'])) {
// lancement de la requête
$sql = 'UPDATE liste_proprietaire SET adresse="'.$_POST['nouvelle_adresse'].'"
WHERE nom="'.$_POST['proprio'].'"';
// on exécute la requête (mysql_query) et on affiche un message au cas où la
requête ne se passait pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base
mysql_close();
// un petit message permettant de se rendre compte de la modification effectuée
echo 'La nouvelle adresse de '.$_POST['proprio'].' est : '.$_POST[
'nouvelle_adresse'];
}
else {
echo 'Les variables du formulaire ne sont pas déclarées';
}
?>
</body>
</html>
Retourner au haut de la page..haut de page…
Précèdent…...Précèdent...  		Vous êtes ici:modifier des donnees dans la BDD.		Voir la suite…suivant…
						


Vous pouvez copier, modifier des copies de cette page, tant que cette note apparaît clairement
Vous devez citer le nom de l'auteur original et faire un lien hypertexte vers http://apprendre.uuuq.com


Valid XHTML 1.0 Transitional Annuaire gratuit pour webmasters



Consultez mes statistiques

Ce site est listé dans la catégorie Web designer : Aides et tutoriels création web de l'annuaire Referencement organique et Les actualités du Dicodunet


Publicite Afrique
Aquitaweb > L'Aquitaine a référencé ce site Annuaire généraliste Glaneur.fr

petites annonces gratuites

Meilleur du Web : Annuaire des meilleurs sites Web. publimaxi.com: affichez vos sites au maximum ! !
Moteur de Recherche. Inscription Gratuite.
Le Moteur
Recherche-Web
référencement gratuit
•  référencement  •    positionnement    •  référencement manuel professionnel discount  •
annuaires et moteurs

referencement gratuit royaume