créer un site


Supprimer des valeurs de la bdd par des checkbox

Poster un nouveau sujet sur javascript   Répondre au sujet à javascript:Supprimer des valeurs de la bdd par des checkbox    Accueil Forum -> javascript
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
meo
html mioche
html mioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 22-11-2008 21:48

Bonjour,

J'ai l'impression que le Javascript n'est pas le fort de tous...
Je débute un peu en php et je me suis renseignée : il faut que je me tourne vers du Javascript pour ce que je veux. Par contre, je ne trouve rien sur le net pour le moment.

Mon soucis :

Je suis en train de faire une zone d'administration qui pourrait ressembler à quelque chose comme ça : (Impression pdf de la page) [http://www.asseauciation.com/images/AssEAUciation_admin..pdf]
Donc avec la partie supérieure qui affiche les news déjà en ligne et visibles par tous. Il y a une checkbox qui se crée à chaque enregistrement.
Le but serait de pouvoir supprimer certains enregistrements de la bdd en cochant la/les checkbox.

Voici le code de ma page qui permet d'exécuter les formulaires :
Code:

<html>
<head>
<title> L'assEAUciation - Bienvenue sur le site de l'association du Master 2 Pro Connaissance, Gestion et Mise en Valeur des Espaces Aquatiques Continentaux</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

<meta name="GENERATOR" content="Namo WebEditor v6.0">
<link rel="stylesheet" href="nav/style_texte.css">


<meta name="description" content="AssEAUciation ou association du master 2 connaissance, gestion et mise en valeur des espaces aquatiques continentaux, Université Lumière, Lyon 2, délocalisé à mâcon">
<meta name="keywords"content="association, master, eau, milieu aquatique, étudiante, étudiant, etudiant, gestionnaire, ecologiste, AssEAUciation, asseauciation, pro, master eau, master pro, bienvenue, mise en valeur, gestion, universite, riviere, lac, fleuve">
<meta name="abstract" content=" AssEAUciation du Master 2 Professionnel Connaissance, gestion et mise en valeur des espaces aquatiques continentaux assure la promotion de la formation, l'aide aux étudiants du master pro durant leur séjour à Mâcon, l'aide à l'insertion professionnelle des diplômés, le maintien d'un lien entre les anciens et les nouveaux étudiants, la sensibilisation aux milieux aquatiques.">
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="language" content="fr">
<meta http-equiv="Content-Language" content="fr">
<meta name="language" content="fr">
<meta http-equiv="Content-Language" content="fr">
<meta name="robots" content="index, follow">
<meta name="revisit-after" content="30 days">
<meta name="reply-to" content="">
<meta name="identifier-url" content="http://www.asseauciation.com">
<meta name="subject" content="AssEAUciation du Master 2 Professionnel Connaissance, gestion et mise en valeur des espaces aquatiques continentaux ">
<meta name="expires" content="never">
<meta name="location" content="France, FRANCE">
<meta name="rating" CONTENT="general">
<meta name="category" content="décors de spectacle">
<meta http-equiv="VW96.OBJECT TYPE" content="Document">

<script language="JavaScript">
<!--
function na_change_img_src(name, nsdoc, rpath, preload)
{
  var img = eval((navigator.appName.indexOf('Netscape', 0) != -1) ? nsdoc+'.'+name : 'document.all.'+name);
  if (name == '')
    return;
  if (img) {
    img.altsrc = img.src;
    img.src    = rpath;
  }
}

function na_restore_img_src(name, nsdoc)
{
  var img = eval((navigator.appName.indexOf('Netscape', 0) != -1) ? nsdoc+'.'+name : 'document.all.'+name);
  if (name == '')
    return;
  if (img && img.altsrc) {
    img.src    = img.altsrc;
    img.altsrc = null;
  }
}

// -->
</script>
<LINK REL="SHORTCUT ICON" href="favicon.ico">
</head>

<body bgcolor="#BAB58C" link="black" vlink="black" alink="blue">
<table width="685" style="line-height:100%; margin-top:0; margin-bottom:0;" cellpadding="0" cellspacing="0" align="center">
   
    <?php include("menu0.php"); ?></td>
   
</table>



<table width="688" style="line-height:100%; margin-top:0; margin-bottom:0;" align="center" cellpadding="0" cellspacing="0">
    <tr>
        <td width="105" valign="top" style="background-color:rgb(71,104,137);" height="560">
               <p align="center" style="line-height:150%; margin-top:0; margin-bottom:0;" class="Normal">&</p>
                              <?php include("menu1.php"); ?>

            </td>
        <td width="583" valign="top" style="background-color:white;" height="560">

            <p class="Normal" style="margin-right:10; margin-left:10;">&</p>
               <p class="Normal" style="line-height:150%; margin-right:10; margin-left:10;"></p>
               <p class="Normal" style="margin-right:10; margin-left:10;">
               
               
               
               <br>
                  <br>
               </p>
               <p class="Normal" style="margin-right:10; margin-left:10;">&&<br>
               </p>
               <p class="Normal" style="margin-right:10; margin-left:10;"><br>
               </p>
               <p class="Normal" style="margin-right:10; margin-left:10;">
               
<?php
require("config.inc.php");

$connect = mysql_connect($host,$username,$password) or die ("erreur de connexion");
mysql_select_db($bdd_name,$connect) or die ("erreur de connexion base");

$supprimer = $_POST['supprimer'];
$mail = $_POST['mail'];
$titre = $_POST['titre'];
$texte = $_POST['texte'];
$docu_pdf = $_POST['docu_pdf'];
$ftype = $_POST['ftype'];
$time = time();

if($titre != "" AND $texte != "")   
{
   $allowed_types_pdf = array("application/PDF", "application/pdf");
   $allowed_types_jpg = array("image/JPG", "image/jpg", "image/JPEG", "image/jpeg");
   $fname = $HTTP_POST_FILES['docu_pdf']['name'];
   $ftype = $HTTP_POST_FILES['docu_pdf']['type'];
   $fsize = $HTTP_POST_FILES['docu_pdf']['size'];
   $ftmp  = $HTTP_POST_FILES['docu_pdf']['tmp_name'];
   //pour joindre le fichier offre.pdf ou autre que la personne a téléchargé
   if(in_array($ftype, $allowed_types_jpg))
 {
$ext = "JPG";
}
else if(in_array($ftype, $allowed_types_pdf))
 {
$ext = "PDF";
}
else
 {
die("Les seuls formats acceptés sont : .PDF, .pdf, .JPG, .jpg, .jpeg, .JPEG");
}
   
 if($fsize > '3000000')
   {
   die("Votre fichier est trop important (max 3 mo)");
   }
      if(copy($ftmp,"news/".$time.".".$ext.""))
      // on va enregistrer le fichier dans le dossier news de l'hébergeur (propriétés 777)
      {
      $envoienews = "INSERT INTO news(time, nom, mail, titre, texte, docu_pdf, ftype)
      VALUES ('$time', '$nom', '$mail', '$titre', '$texte', '$docu_pdf', '$ftype')" ;
      //bdd de news créée
      
      $envoie1 = mysql_query($envoienews) or die( mysql_error() ) ;
      //on demande d'envoyer sur l'hébergeur la bdd
         if($envoie1)
            {
            $message = $nom . " " . $mail . "\n a post& une news sur le site de l'AssEAUciation";
            if(mail('webmaster.asseauciation@gmail.com', 'Post News AssEAUciation', $message))
            echo "Votre News a bien &t& enregistr&e, & bient&t.";
            }
// si c'est bien envoyé, on envoie aussi un mail
      }
   
      
}

else
{
echo "Certains champs obligatoires n'ont pas &t& compl&t&s... Veuillez revenir à la page précédente et vérifier vos réponses";
}
 ?>
               
               </p>
               <p></p>
               <p></p>
               <p class="Normal" style="margin-right:10; margin-left:10;">&</p>
               <p class="Normal" style="margin-right:10; margin-left:10;">&</p>
               <p class="Normal" style="margin-right:10; margin-left:10;">&</p>
               <p class="Normal">&</p>
               <p class="Normal">&</p>
               <p>&</p>
            </td>
    </tr>
</table>

    <table width="685" style="line-height:100%; margin-top:0; margin-bottom:0;" class="Normal" align="center" cellpadding="0" cellspacing="0">
    <tr>
        <td width="690" height="25" style="background-color:rgb(246,174,66);">
            <p align="center"><i>& Heureux l'étudiant qui, comme la rivère, arrive à suivre son cours sans quitter son lit. &</i>            </p>
        </td>
    </tr>
    <tr>
        <td width="690" height="70" style="background-color:rgb(71,104,137);">

            <p align="center"><span style="background-color:rgb(71,104,137);">Tous droits réservés à AssEAUciation&-&Copyright&2007&</span></p>
        </td>
    </tr>
    </table>


<p>&</p>


</body>
</html>


Hum...
Une petite idée de génie ? Rolling Eyes
salemioche
salemioche
salemioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 23-11-2008 22:38

j'ai un peu la flemme de decrypter tout le php mais, le truc standard, c'est de faire un submit automatique du form quand on clique sur la checkbox, cela permet de recupérer l'id de l'objet a supprimer

il suffit de faire

Code:
<input type="checkbox" onClick="this.form.submit();" name="news" value="id_de_la_news">
meo
html mioche
html mioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 24-11-2008 20:55

Bonjour,

Merci pour la réponse !

En fait, j'ai une partie de la solution... Avec ce code, je suis obligée de supprimer les éléments un à un. Je ne peux pas cocher plusieurs checkbox et valider ensuite les suppressions, si ?

Merci encore
salemioche
salemioche
salemioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 24-11-2008 20:59

non, mais si tu veux supprimer plusieurs trucs d'un coup, ca revient a un formulaire standard, plus besoin de javascript
meo
html mioche
html mioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 24-11-2008 21:09

Re bonsoir,

Merci de prendre le temps de me répondre.

J'avoue qu'on m'aide encore pour le PHP, donc le Javascript... La personne me dit que
Citation:
Les noms des cases à cochés sont les id des enregistrements dans la BDD, donc ça peut varier entre 1 et 99999, c'est donc difficile de contrôler chaque noms de variables post possible


Et donc qu'un simple formulaire serait compliqué.

J'avoue que pour ma part je ne comprend encore les codes que lorsqu'ils sont finit et fonctionnent... à ce moment seulement je peux les réutiliser Confused Confused
salemioche
salemioche
salemioche
MessageSupprimer des valeurs de la bdd par des checkbox , Posté le: 24-11-2008 21:50

le nom de la variable doit etre news[]

ca donne

Code:
<input type="checkbox" name="news[]" value="1">
<input type="checkbox" name="news[]" value="2">
<input type="checkbox" name="news[]" value="10">
...


ensuite dans php on récupère un tableau dans $_POST['news']
avec seulement les valeurs qui sont cochés
par exemple si 1 et 10 sont coches

implode(',',$_POST['news'])
retournera : 1,10

ensuite c'est facile d'insérer ca dans une requete sql
ou alors de faire un
foreach($_POST['news'] as $news_id)

voila les pistes, il faut jouer avec le codes à présent

c'est important d'avoir un bouquin pour progresser, un langage s'apprend mal sur le net, la lecture n'est pas structuré, j'aime bien celui la http://www.amazon.fr/exec/obidos/ASIN/2212123698/salemiochec0c-21
mais y'en a surement plein d'autres. mais celui la je l'ai, donc lu et je sais de quoi je parle Very Happy
Montrer les messages depuis:   
Poster un nouveau sujet sur javascript   Répondre au sujet à javascript:Supprimer des valeurs de la bdd par des checkbox    Accueil Forum -> javascript Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
S'enregistrerS'enregistrer
ProfilProfil
Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés
RechercherRechercher
Liste des MembresMembres
FAQFAQ
ConnexionConnexion 


© Mentions Légales