Extensions et tutorials gratuits disponibles sur internet pour Dreamweaver. PHP et ASP. Classement thématique. Blog référencé par Adobe Communauté Dreamweaver.

Dreamweaver gratuit

Insérer des données dans 2 tables via un seul formulaire (cases à cocher) - Part 2

19 septembre 2011 | Posté par caroder à 10:27

Pour arriver à insérer des données dans 2 tables différentes, nous devons impérativement récupérer l’ID d’insertion du 1er enregistrement dans la 1re table pour nous en servir comme clé étrangère dans l’insertion de l’enregistrement dans la 2e table.

Il y a longtemps déjà je vous avais expliqué comment récupérer cet ID d’enregistrement lors de l’insertion. Nous allons donc appliquer basiquement cette méthode.

Le nom donné par Dreamweaver par l’assistant d’insertion d’enregistrement dans mon exemple n’a pas été modifié. Il s’agit de $Result1.

Repérer dans le code les lignes suivantes ($ConnTuto est le nom que j’ai donné à ma connexion, ce nom varie en fonction du nom que vous avez choisi pour la vôtre) :

  mysql_select_db($database_ConnTuto, $ConnTuto);
  $Result1 = mysql_query($insertSQL, $ConnTuto) or die(mysql_error());

Ajoutez juste en dessous de ces 2 lignes le code suivant :

$theID = mysql_insert_id();

Cette instruction nous sert à récupérer l’ID de l’utilisateur dans la 1re table.

Il ne nous reste plus qu’à écrire la requête pour les enregistrements dans la 2e table avec comme clé étrangère l’ID de l’utilisateur. Pour ceci, nous allons utiliser une boucle « foreach » car il nous faudra autant de ligne d’enregistrements que d’abonnements demandés aux thématiques.

Juste en dessous de la ligne « $theID = mysql_insert_id(); », ajoutez le code suivant :

// insertions des cases à cocher dans la deuxième table
// *************************************************************
if (!empty($_POST['abonnement'])) { /* la case à cocher n’est pas vide */

     foreach ($_POST['abonnement'] as $cle) { /* pour chaque case cochée devenue variable $cle */
                $Requete = "INSERT tb_abonnements (abonnement, id_utilisateur) VALUES ('$cle', '$theID')";
                $resRequete = mysql_query($Requete, $ConnTuto) or die(mysql_error());
     }
}

Voilà, c’est fini !

Il ne vous reste plus qu’à sauvegarder votre page et à procéder à un test de votre formulaire. Vos deux tables devraient se remplir simultanément à chaque envoi du formulaire, la première avec un seul enregistrement et la seconde avec autant d’enregistrement que de cases cochés comme abonnement.



Insérer des données dans 2 tables via un seul formulaire (cases à cocher) - Part 1

05 septembre 2011 | Posté par caroder à 09:08

C’est la rentrée aujourd’hui et j’effectue la mienne avec le tutorial promis pendant les vacances ;-)

Voici un problème classique qui se pose au développeur débutant avec Dreamweaver. Vous avez une table de base de données reliée à une autre table via clé étrangère et vous souhaitez insérer des données dans les 2 tables au sein d’un seul et unique formulaire.

Ce problème se pose couramment lorsque vous avez par exemple la possibilité pour un utilisateur de renseigner des cases à cocher (plusieurs choix possibles, c’est donc un cas typique de relation un à plusieurs). Nous allons donc voir comment faire pour procéder à l’insertion simultanée dans 2 tables avec Dreamweaver.

Nous allons imaginer que vous avez une page d’inscription à diverses newsletters pour un visiteur de votre site : une newsletter « business », une newsletter « développement », une newsletter « webdesign » et une newsletter « référencement ». Un visiteur peut s’abonner à une ou plusieurs newsletters.

Créons d’abord les tables de la base de données. Une table servira à abriter les informations personnelles du visiteur et une table sera destinée à stocker ses abonnements proprement dits. La table N°2 est liée à la première via l’ID d’inscription du visiteur.

CREATE TABLE IF NOT EXISTS `tb_utilisateurs` (
  `ID_utilisateur` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) NOT NULL,
  `prenom` varchar(50) NOT NULL,
  `mail` varchar(100) NOT NULL,
  PRIMARY KEY (`ID_utilisateur`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

CREATE TABLE IF NOT EXISTS `tb_abonnements` (
  `ID_abonnement` int(11) NOT NULL AUTO_INCREMENT,
  `ID_utilisateur` int(11) NOT NULL,
  `newsletter` int(11) NOT NULL,
  PRIMARY KEY (`ID_abonnement`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Nous allons créer un très classique formulaire (pour notre exemple nous ne ferons aucune mise en forme CSS). Pour cela dans Dreamweaver >> Fichier >> Nouveau >> type de fichier « PHP » et Mise en forme « aucune ».  Pour ce tutorial, nous supposons que vous avez créé le site selon les préceptes de Dreamweaver, que vous avez défini le serveur d’évaluation en local et et la connexion à la base de données (étapes nécessaires pour poursuivre ce tuto).

Une fois votre nouvelle page enregistrée dans votre site (dans notre exemple, j’ai appelé ma page inser2tables.php), allez dans la palette insertion et, dans le sous-ensemble « données », sélectionnez « insérer un enregistrement » pour lequel vous choisissez l’assistant. Remplissez les champs comme indiqué dans la capture ci-dessous (en supprimant le champ ID_utilisateur).

1

Insérer une ligne supplémentaire dans le tableau contenu dans le formulaire créé automatiquement que vous intitulez « Abonnements ». En regard de cet intitulé, dans la colonne de droite, intégrez un groupe de cases à cocher via l’onglet « données » de la palette « insertion ».

2

Affichez le code de la page. Vous allez rajouter des paires de crochets vides (ouvrant et fermant) dans l’attribut « name »  de chaque type d’abonnement. Les lignes de codes correspondantes doivent maintenant ressembler à ceci :

          <label>
          <input type="checkbox" name="abonnement[]" value="1" id="abonnement_0" />
          business </label>
        <br />
        <label>
          <input type="checkbox" name="abonnement[]" value="2" id="abonnement_1" />
          développement </label>
        <br />
        <label>
          <input type="checkbox" name="abonnement[]" value="3" id="abonnement_2" />
          webdesign </label>
        <br />
        <label>
          <input type="checkbox" name="abonnement[]" value="4" id="abonnement_3" />
          référencement </label>
        <br />

Votre page doit ressembler à ceci :

3

Voilà nous en avons fini pour cette fois-ci. Nous verrons très prochainement le code PHP à rajouter à celui généré par Dreamweaver pour procéder à l’insertion simultanée dans les deux tables tb_utilisateurs et tb_abonnements

Biglib, site d'échanges et de dons de livres gratuits

02 août 2011 | Posté par caroder à 21:28

biglib

Voici un projet nouveau, sans but lucratif ("encore !" dirait mon mari) et totalement personnel. Je suis en train de développer Biglib, un site d'échanges et de dons de livres, CD et DVD (Biglib pour "The Big Library", la grande bibliothèque, donc). A ce stade, tout est encore très expérimental mais je vous en parle ici car ce sera pour moi l'occasion de mettre en ligne de nouveaux tutorials (il était temps !).

Je vous proposerai donc très prochainement de travailler sur le thème suivant : Dreamweaver, les cases à cocher à valeurs multiples et l'insertion simultanées dans 2 tables via un formulaire unique (dont vous pouvez voir la mise en oeuvre sur le site ci-dessus).

En attendant la mise en ligne, je vous souhaite d'excellentes vacances à tous !

Catégorie : Fun | Commentaires [0] | Rétroliens [0] | Permalien [#] | Tags : ,

Extension gratuite Dreamweaver/PHP : formulaire de contact

10 janvier 2010 | Posté par caroder à 18:32

Voici une extension gratuite qui vous permettra d'ajouter à votre site un formulaire de contact. Le formulaire produit par cette extension de Dreamweaver est particulièrement bien fait puisqu'il comprend un captcha, le contrôle par javascript de la validité de l'adressee-mail (certes, il aurait mieux value une vérification via PHP, mais c'est mieux que rien). Il est aussi prévue une réponse automatique lors de la prise de contact par l'utilisateur.

Vous pouvez télécharger cette extension en cliquant sur le lien : extension Bcontact.

Extension gratuite Dreamweaver ! Construisez et stylez de superbes formulaires en 5mn

30 juillet 2009 | Posté par caroder à 12:09

Georges Petrov propose gratuitement sur le site DMX Zone une nouvelle et superbe extension pour Dreamweaver vous permettant de construire et styler vos formulaires par simple drag and drop. Cette extension propose 6 feuilles de style prédéfinies dont deux me semble pas mal du tout (Clean et Clear).

form_extension

Vous pouvez tester ces styles : http://www.dmxzone.com/demo/php/formDesigner/formDesigner1/index.php?name=littlecookie&passwordfield1=c%40sp3r&passwordfield2=&bio=

Pour accéder aux fonctionnalités proposées par l'extension, vous devez vous rendre dans la palette insertion >> DmxZone, puis cliquer sur l'item dmxCssFormDesigenr pour commencer le wizzard de l'extension. A gauche de la fenêtre ci-dessus, dans le header, les éléments de formulaire à cliquer/déposer dans la zone du milieu, à droite le choix de style prédéfini (dans ma capture "clean").
En bas de la fenêtre, les attributs de l'élément de formulaire (nom, label, formats prédéfinis et édition via Dreamweaver).

dmxcss4designer

Parmi les fonctionnalités proposées :

  • Totalement basé sur la mise en forme CSS
  • Les éléments de formulaire sont glissés/déposés avec leur <label>
  • Des champs de formulaire aux étiquettes prédéfinies tels que liste de pays, capitales européennes, mois, jours de la semaine…
  • Tous les éléments sont bien entendus modifiables dans Dreamweaver selon vos besoins.

Il est à noter que Georges Petrov indique un bug de fonctionnement pour les utilisateurs de Dreamweaver CS3 qui navigue encore avec IE6. Pour ma part, avec Dreamweaver CS4 et IE6, cela a parfaitement fonctionné…

Toutes les informations concernant cette extension sont disponibles ici : http://www.dmxzone.com/go?16830 (inscription obligatoire au site pour télécharger l'extension)

A noter, un bug sur le lien vers le manuel d'utilisation : il vous emmènera sur le manuel d'une autre extension de création de calendrier (payante) !

Un grand merci à Georges Petrov pour cette extension très utile.

Catégorie : Formulaires | Commentaires [1] | Rétroliens [0] | Permalien [#] | Tags : , ,

Dreamweaver pour débutants : les fondamentaux selon JPierre

25 mars 2009 | Posté par caroder à 18:54

JPierre propose sur le site ASP-PHP.NET 3 tutos sur les fondamentaux de Dreamweaver et PHP. Je recommande ces 3 articles comme d'habitude extrêmement bien faits et très pédagogiques. Ils s'adressent à ceux qui débutent avec le logiciel et avec PHP.

Pour apprendre comment manipuler les données, ajouter, modifier et supprimer des enregistrements dans une table : http://www.asp-php.net/tutorial/asp-php/dreamweaver-les-fondamentaux-part1.php

Pour insérer des boutons, des cases à cocher et des menus dans vos formulaires afin qu'ils renseignent correctement vos enregistrements : http://www.asp-php.net/tutorial/asp-php/dreamweaver-les-fondamentaux-part2.php

Pour comprendre comment construire une requête SQL via l'assistant jeu d'enregistrement dans Dreamweaver : http://www.asp-php.net/tutorial/asp-php/dreamweaver-les-fondamentaux-part3.php

Contrôle de validation de formulaires via Spry

05 mars 2009 | Posté par caroder à 07:09

Ah... Les contrôles de formulaire ! Je ne sais pas pour vous, mais pour moi c'est l'horreur :-)
Si je préfère l'utilisation de PHP pour faire le travail (il existe des extensions payantes pour ceci, notamment celle de Felixone) , il ne faut néanmoins pas oublier Javascript avec la technologie AJAX. C'est ici que Spry rentre en piste...

L'excellent Jean-Pierre a produit un tuto sur l'utilisation de Spry pour le contrôle de formulaire. Si vous souhaitez lire son tutorial : http://www.asp-php.net/tutorial/asp-php/formulaire-dreamweaver-cs3-mysql-ajax.php?page=1



  1