IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Réalisation d'une suppression en cascade


Sujet :

PHP & Base de données

  1. #21
    Membre confirmé Avatar de mjs21
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Par défaut
    Citation Envoyé par Lest_we_forget Voir le message
    Remplace

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td bgcolor="#CCCCCC"><a href="supp_type.php?num='.$row['num_type'].'" onClick="confirmation(); return false;">
    Par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <td bgcolor="#CCCCCC"><a href="supp_type.php?num='.$row['num_type'].'" 
    onclick="if (window.confirm('Êtes vous sur de vouloir effacer ce type ?')) 
                {location.href='tapagedesuppression.php';return true;} else {return false;}">>
    Maintenant, pour faire ce que tu veut faire il faudrai le mettre dans une fonction et essayé comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function demanderconfirm ()
    {
    if (window.confirm('Attention du materiel existe ...')) 
                {location.href='tapagedesuppression.php';return true;} else {return false;}
     
    function demanderconfirm2 ()
    {
    if (window.confirm('Êtes vous sur de vouloir effacer ce type ?')) 
                {location.href='tapagedesuppression.php';return true;} else {return false;}
    Et avant ton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td bgcolor="#CCCCCC"><a href="supp_type.php?num='.$row['num_type'].'" onClick="confirmation(); return false;">
    tu ajoute :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $Requete="Select * from matériels where NumType='".$_POST["type"];"
    $Resultat=mysql_query($Requete)
    $Ligne=mysql_fetch_array(Resultat)
     
    if ($Ligne)
    {
    echo "<td bgcolor="#CCCCCC"><a href="supp_type.php?num='.$row['num_type'].'" onClick="confirmation(); return false;">";
    }
    else
    {
    echo "<td bgcolor="#CCCCCC"><a href="supp_type.php?num='.$row['num_type'].'" onClick="confirmation2(); return false;">";
    }

    Je test ça et je te dis ça merci !

  2. #22
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Par défaut
    Il se peut qu'il y ai des erreur de côtes ou de guillemets... (Ctrl+C, Ctrl+V...)

  3. #23
    Membre confirmé Avatar de mjs21
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Par défaut
    Citation Envoyé par Lest_we_forget Voir le message
    Il se peut qu'il y ai des erreur de côtes ou de guillemets... (Ctrl+C, Ctrl+V...)
    Je ne sais plus trop comment m'y prendre pour ces messages car j'ai tout regroupé mon code sur une meme page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
     
    <SCRIPT LANGUAGE="JavaScript"> 
    function SuppType() { 
    var msg = "Etes-vous sur de vouloir supprimer ce type ?"; 
    if (confirm(msg)) 
    location.replace(modif_type.php); 
    } 
    </SCRIPT> 
    <?php
    #########################################################
    #                                                       #
    #         Script de modification et suppression         #
    #						de type                         #
    #                                                       #
    #########################################################
     
    // Connexion à la base res_materiel
    include ('./connect/connexion.php');
     
    ?>
    <p><em><strong>Liste des types :</strong></em></p>
    <br />
    <style type="text/css">
     
    img{ 
    border: 0; 
    } 
     
    </style>
     
    <?php
    if (isset($_GET['num']))
    {
    // on recup le numero de materiel dans $num
    $num = $_GET['num']; 
    }
    $connexion = mysql_connect($serveur,$user,$pass);
    mysql_select_db($base,$connexion);	
     
    if(isset($_GET["update"]))
    {
    	//On récupère les valeurs du formulaire
    	$type = $_POST['type'];
     
     
    	if ($type == "")
    	{
    	// Affiche un le message d'erreur en dessous du formulaire de modification
    	$alert = 1;
     
    	}
    	else
    	{	
    		$connexion = mysql_connect($serveur,$user,$pass);
    		mysql_select_db($base,$connexion);	
     
    		mysql_query("DELETE FROM TYPE WHERE num_type = $num", $connexion) or die ("erreur requete 1");
    		mysql_query("INSERT INTO TYPE VALUES ('".$num."', '".$type."')", $connexion) or die ("erreur requete 2");
     
    	}
    }
    //Parametres de connection à la base :
    $connexion = mysql_connect($serveur,$user,$pass);
    mysql_select_db($base,$connexion);				
    $requete = "SELECT * FROM TYPE";
    $result = mysql_query($requete, $connexion);
     
    echo '<table bgcolor="#FFFFFF">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
           	 echo '<td bgcolor="#669999"><b><u>Type</u></b></td>';
    		 echo '<td bgcolor="#669999"><b><u></u></b></td>';
         	 echo '<td bgcolor="#669999"><b><u></u></b></td>' ;
         	 echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_array($result))
    	 {
            echo '<tr>';
            echo '<td bgcolor="#CCCCCC">'.$row["lib_type"].'</td>';
    		echo '<td bgcolor="#CCCCCC"><a href="modif_type.php?num='.$row['num_type'].'"><img src="img/modification.PNG"/></a></td>';
    		echo '<td bgcolor="#CCCCCC"><a href="modif_type.php?numsupp='.$row['num_type'].'" onClick="SuppType(); return false;"><img src="img/supprimer.png"/></a></td>';
          	echo '</tr>'."\n";
         }
        	echo '</table>'."\n";
        	// fin du tableau.
     
    ####################################
    #          PHASE DE MODIF          #
    #################################### 
    		if ($_GET['num'])
    			{
    				// Requete de selection		
    				$seltype = mysql_query("SELECT * FROM TYPE WHERE num_type = '$num'", $connexion) or die ("erreur requete") ;
    				$fetch = mysql_fetch_array($seltype);
    				?>
     
    				<form name="update_type" method="post" action="modif_type.php?num=<? echo $num;?>&update=1">
    				  <p>Type : 
    					<input name="type" type="text" value="<?php echo $fetch['lib_type'];?>" />
    				  </p>
    				<input name="Add" type="Submit" value="Modifier">
    				</form>
     
    				<? 
    					if ($alert == 1)
    						{
    							echo "Attention vous n'avez pas rempli le champ type !!";
    						}
    			}
     
    ####################################
    #          PHASE DE SUPPR          #
    ####################################		
     
    		if ($_GET['numsupp'])
    			{
    				$numsupp = $_GET['numsupp']; 		
     
    				// Suppression
    				$select = mysql_query("SELECT COUNT(num_mat) FROM MATERIEL, TYPE WHERE TYPE.num_type = MATERIEL.num_type AND MATERIEL.num_type = $numsupp",$connexion);
     
     
    				if ($select > 0)
    					{
     
    						mysql_query("DELETE FROM MATERIEL WHERE MATERIEL.num_type = '".$numsupp."'", $connexion);
     
    					}
     
    				if($result = mysql_query("DELETE FROM TYPE WHERE num_type = '".$numsupp."'", $connexion))
    					{
    					?><script language="javascript">javascript:location.replace('modif_type.php');</script><?
    					}	
    			}
    ?><a href="index.php">retour</a>
    Merci de votre patience ..

    Cordialement,

    Emmanuel

Discussions similaires

  1. Comment appliquer une suppression en cascade ?
    Par beegees dans le forum Requêtes
    Réponses: 1
    Dernier message: 15/08/2011, 23h08
  2. Réponses: 1
    Dernier message: 22/06/2010, 17h01
  3. Réponses: 5
    Dernier message: 03/01/2010, 10h18
  4. Réponses: 5
    Dernier message: 18/01/2009, 12h32
  5. Réponses: 4
    Dernier message: 18/06/2007, 08h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo