Appel d'une requête sql depuis une page html
Fermé
inzemix
-
15 juil. 2010 à 09:57
will5555 Messages postés 332 Date d'inscription samedi 2 août 2008 Statut Membre Dernière intervention 20 août 2013 - 20 juil. 2010 à 13:40
will5555 Messages postés 332 Date d'inscription samedi 2 août 2008 Statut Membre Dernière intervention 20 août 2013 - 20 juil. 2010 à 13:40
A voir également:
- Html sql
- Editeur html - Télécharger - HTML
- &Nbsp html ✓ - Forum Webmastering
- Br html ✓ - Forum Webmastering
- [HTML] - á et les autres - Forum HTML
- Sql lister les tables ✓ - Forum Programmation
2 réponses
will5555
Messages postés
332
Date d'inscription
samedi 2 août 2008
Statut
Membre
Dernière intervention
20 août 2013
45
15 juil. 2010 à 10:03
15 juil. 2010 à 10:03
Il faut créer un formulaire en html ensuite à la validation le résultat devra etre envoyé a une page .php, et la avec du code php il est possible de rentrer les informations dans la base de données.
Voici un lien qui vous aidera à comprendre tout cela https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
Cependant si vous me fournissez le code du fichier html à disposition je me ferait un plaisir de vous faire le fichier php
Voici un lien qui vous aidera à comprendre tout cela https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
Cependant si vous me fournissez le code du fichier html à disposition je me ferait un plaisir de vous faire le fichier php
will5555
Messages postés
332
Date d'inscription
samedi 2 août 2008
Statut
Membre
Dernière intervention
20 août 2013
45
15 juil. 2010 à 10:50
15 juil. 2010 à 10:50
Voici le code pour enregistrer les informations dans la base de données
Le code est commenté et ne gène en aucun cas son exécution.
Des informations me manquait donc il y a quelques peties choses à changer
Notamment sur cette ligne $req = $bdd->prepare('INSERT INTO Nom_De_La_Table(champ1, champ2, champ3 ) VALUES(:champ1, :champ2, :champ3)'); ou le Nom_De_La_Table doit etre remplacer ainsi que les champ1, champs2 etc
<?php
/*ci dessous nous avons les informations récupérer grace au formulaire, la fonction strip_tags permet d'éviter le piratage */
$formID = strip_tags($_POST['formID']);
$matricule = strip_tags($_POST['q3_matricule3']); /* $matricule correspond à la valeur de la case matricule */
$societe = strip_tags($_POST['q8_societe']);
$annee = strip_tags($_POST['q5_annee5']);
$typeDAbscence = strip tags($_POST['q4_typeDabsence']);
// ci dessous on se connecte à la base de données
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');
/* il faut remplacer localhost par l'adresse de la base de données, test par le nom de base de données,
root par le nom d'utilisateur donnant accès à la base de données et ensuite password par le mot de passe de l'utilisateur de la base de données
*/
}
catch (Exception $e) // cette partie permet de sécuriser le code en cas d'erreur
{
die('Erreur : ' . $e->getMessage());
}
$req = $bdd->prepare('INSERT INTO Nom_De_La_Table(champ1, champ2, champ3 ) VALUES(:champ1, :champ2, :champ3)');
$req->execute(array(
'champ1' => $InfoARecuperer, /*il faut mettre l'une des variables qui est associé au premier champ afin de la mettre dans la base de donnée*/
'champ2' => ,
'champ3' => // il ne faut surtout pas mettre de virgule pour le dernier champ
));
$req->closeCursor();
?>
Le code est commenté et ne gène en aucun cas son exécution.
Des informations me manquait donc il y a quelques peties choses à changer
Notamment sur cette ligne $req = $bdd->prepare('INSERT INTO Nom_De_La_Table(champ1, champ2, champ3 ) VALUES(:champ1, :champ2, :champ3)'); ou le Nom_De_La_Table doit etre remplacer ainsi que les champ1, champs2 etc
<?php
/*ci dessous nous avons les informations récupérer grace au formulaire, la fonction strip_tags permet d'éviter le piratage */
$formID = strip_tags($_POST['formID']);
$matricule = strip_tags($_POST['q3_matricule3']); /* $matricule correspond à la valeur de la case matricule */
$societe = strip_tags($_POST['q8_societe']);
$annee = strip_tags($_POST['q5_annee5']);
$typeDAbscence = strip tags($_POST['q4_typeDabsence']);
// ci dessous on se connecte à la base de données
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');
/* il faut remplacer localhost par l'adresse de la base de données, test par le nom de base de données,
root par le nom d'utilisateur donnant accès à la base de données et ensuite password par le mot de passe de l'utilisateur de la base de données
*/
}
catch (Exception $e) // cette partie permet de sécuriser le code en cas d'erreur
{
die('Erreur : ' . $e->getMessage());
}
$req = $bdd->prepare('INSERT INTO Nom_De_La_Table(champ1, champ2, champ3 ) VALUES(:champ1, :champ2, :champ3)');
$req->execute(array(
'champ1' => $InfoARecuperer, /*il faut mettre l'une des variables qui est associé au premier champ afin de la mettre dans la base de donnée*/
'champ2' => ,
'champ3' => // il ne faut surtout pas mettre de virgule pour le dernier champ
));
$req->closeCursor();
?>
Merci mille fois, cela m'aide beaucoup, mais il me reste un point: je ne cherche pas à faire une mise à jour, mais à afficher le résultat de la requête.
Je pensais donc faire :
select datedebut, datefin, nbjours from dbo.tabledesabsences where mat= $matricule and soc=$societe and typabs= $typeDAbscence and year(datdeb)= $annee
Comment puis-je alors afficher le résultat sur la page de l'utilisateur ?
Je pensais donc faire :
select datedebut, datefin, nbjours from dbo.tabledesabsences where mat= $matricule and soc=$societe and typabs= $typeDAbscence and year(datdeb)= $annee
Comment puis-je alors afficher le résultat sur la page de l'utilisateur ?
will5555
Messages postés
332
Date d'inscription
samedi 2 août 2008
Statut
Membre
Dernière intervention
20 août 2013
45
15 juil. 2010 à 15:19
15 juil. 2010 à 15:19
Voici le code, théoriquement il doit bien fonctionner.
<?php
$formID = strip_tags($_POST['formID']);
$matricule = strip_tags($_POST['q3_matricule3']); // $matricule correspond à la valeur de la case matricule
$societe = strip_tags($_POST['q8_societe']);
$annee = strip_tags($_POST['q5_annee5']);
$typeDAbscence = strip tags($_POST['q4_typeDabsence']);
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');
/* il faut remplacer localhost par l'adresse de la base de données, test par le nom de base de données,
root par le nom d'utilisateur donnant accès à la base de données et ensuite password par le mot de passe de l'utilisateur de la base de données */
}
catch (Exception $e) // cette partie permet de sécuriser le code en cas d'erreur
{
die('Erreur : ' . $e->getMessage());
}
$req = $bdd->prepare('SELECT datedebut, datefin, nbjours FROM dbo.tabledesabsences WHERE mat= ? AND soc= ? AND typabs= ? AND year(datdeb)= ? ');
$req->execute(array($matricule, $societe, $typeDAbscence, $annee));
while ($donnees = $req->fetch())
{
echo '' . donnees['datedebut'] . donnees['datefin'] . donnees['nbjours'] . '';
}
$req->closeCursor();
?>
<?php
$formID = strip_tags($_POST['formID']);
$matricule = strip_tags($_POST['q3_matricule3']); // $matricule correspond à la valeur de la case matricule
$societe = strip_tags($_POST['q8_societe']);
$annee = strip_tags($_POST['q5_annee5']);
$typeDAbscence = strip tags($_POST['q4_typeDabsence']);
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');
/* il faut remplacer localhost par l'adresse de la base de données, test par le nom de base de données,
root par le nom d'utilisateur donnant accès à la base de données et ensuite password par le mot de passe de l'utilisateur de la base de données */
}
catch (Exception $e) // cette partie permet de sécuriser le code en cas d'erreur
{
die('Erreur : ' . $e->getMessage());
}
$req = $bdd->prepare('SELECT datedebut, datefin, nbjours FROM dbo.tabledesabsences WHERE mat= ? AND soc= ? AND typabs= ? AND year(datdeb)= ? ');
$req->execute(array($matricule, $societe, $typeDAbscence, $annee));
while ($donnees = $req->fetch())
{
echo '' . donnees['datedebut'] . donnees['datefin'] . donnees['nbjours'] . '';
}
$req->closeCursor();
?>
Merci beaucoup, j'ai essayé (avec mes modestes moyens) et je ne parviens pas à exécuter la requête. Il y a deux choses qui peuvent m'embêter:
1. je ne suis pas sûr du tout d'avoir inséré le code php au bon endroit dans mon code html, du coup quand je clique sur le bouton de soumission "afficher les absences", je soumets la forme de ma page au site jotform.com sur lequel j'ai créé ma page html, mais je ne lance pas la requête sql. Cette requête s'exécute sans problème si je la tape dans studio manager (sql 2005).
2. la syntaxe de la ligne permettant de gérer la connexion permet-elle de se connecter à un serveur sql microsoft ?
je tatônne, désolé.
Voici le code actuel, merci pour tout.
<link type="text/css" rel="stylesheet" href="https://www.jotform.com/css/styles/form.css?v3"/>
<link href="https://www.jotform.com/css/calendarview.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.form-label{
width:150px !important;
}
.form-label-left{
width:150px !important;
}
.form-line{
padding:10px;
}
.form-label-right{
width:150px !important;
}
.form-all{
width:650px;
color:#A52A2A !important;
font-family:Verdana;
font-size:12px;
}
</style>
/*<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
<meta name="HandheldFriendly" content="true" /><form class="jotform-form" action="https://www.jotform.com/submit.php" method="post" name="form_1945958129" id="1945958129" accept-charset="utf-8">
<input type="hidden" name="formID" value="1945958129" />*/
<div class="form-all">
<ul class="form-section">
<li id="id_1" class="form-input-wide">
<div class="form-header-group">
<h2 id="header_1" class="form-header">
Recherche d'absences pour un collaborateur
</h2>
</div>
</li>
<li class="form-line" id="id_3">
<label class="form-label-left" id="label_3" for="input_3"> Matricule </label>
<div id="id_3" class="form-input">
<input type="text" class="form-textbox validate[Alphanumérique]" id="input_3" name="q3_matricule3" size="10" maxlength="10" />
</div>
</li>
<li class="form-line" id="id_8">
<label class="form-label-left" id="label_8" for="input_8"> Société </label>
<div id="id_8" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_8" name="q8_societe">
<option> </option>
<option selected="selected" value="001"> 001 </option>
<option value="002"> 002 </option>
</select>
</div>
</li>
<li class="form-line" id="id_5">
<label class="form-label-left" id="label_5" for="input_5"> Année </label>
<div id="id_5" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_5" name="q5_annee5">
<option> </option>
<option selected="selected" value="2010 "> 2010 </option>
<option value="2011 "> 2011 </option>
<option value="2012 "> 2012 </option>
<option value="2013 "> 2013 </option>
<option value="2014 "> 2014 </option>
<option value="2015 "> 2015 </option>
<option value="2016 "> 2016 </option>
<option value="2017 "> 2017 </option>
<option value="2018 "> 2018 </option>
<option value="2019 "> 2019 </option>
<option value="2020"> 2020 </option>
</select>
</div>
</li>
<li class="form-line" id="id_4">
<label class="form-label-left" id="label_4" for="input_4"> Type d'absence </label>
<div id="id_4" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_4" name="q4_typeDabsence">
<option> </option>
<option value="CP"> CP </option>
<option value="RTT"> RTT </option>
<option value="CSANC"> CSANC </option>
<option value=" "> </option>
</select>
</div>
</li>
<li class="form-line" id="id_7">
<div id="id_7" class="form-input-wide">
<div style="margin-left:156px" class="form-buttons-wrapper">
<button id="input_7" type="submit" class="form-submit-button">
Afficher les absences
</button>
</div>
</div>
</li>
<li style="display:none">
Should be Empty:
<input type="text" name="website" value="" />
</li>
</ul>
</div>
<input type="hidden" id="simple_spc" name="simple_spc" value="1945958129" />
</form>
1. je ne suis pas sûr du tout d'avoir inséré le code php au bon endroit dans mon code html, du coup quand je clique sur le bouton de soumission "afficher les absences", je soumets la forme de ma page au site jotform.com sur lequel j'ai créé ma page html, mais je ne lance pas la requête sql. Cette requête s'exécute sans problème si je la tape dans studio manager (sql 2005).
2. la syntaxe de la ligne permettant de gérer la connexion permet-elle de se connecter à un serveur sql microsoft ?
je tatônne, désolé.
Voici le code actuel, merci pour tout.
<link type="text/css" rel="stylesheet" href="https://www.jotform.com/css/styles/form.css?v3"/>
<link href="https://www.jotform.com/css/calendarview.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.form-label{
width:150px !important;
}
.form-label-left{
width:150px !important;
}
.form-line{
padding:10px;
}
.form-label-right{
width:150px !important;
}
.form-all{
width:650px;
color:#A52A2A !important;
font-family:Verdana;
font-size:12px;
}
</style>
/*<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
<meta name="HandheldFriendly" content="true" /><form class="jotform-form" action="https://www.jotform.com/submit.php" method="post" name="form_1945958129" id="1945958129" accept-charset="utf-8">
<input type="hidden" name="formID" value="1945958129" />*/
<div class="form-all">
<ul class="form-section">
<li id="id_1" class="form-input-wide">
<div class="form-header-group">
<h2 id="header_1" class="form-header">
Recherche d'absences pour un collaborateur
</h2>
</div>
</li>
<li class="form-line" id="id_3">
<label class="form-label-left" id="label_3" for="input_3"> Matricule </label>
<div id="id_3" class="form-input">
<input type="text" class="form-textbox validate[Alphanumérique]" id="input_3" name="q3_matricule3" size="10" maxlength="10" />
</div>
</li>
<li class="form-line" id="id_8">
<label class="form-label-left" id="label_8" for="input_8"> Société </label>
<div id="id_8" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_8" name="q8_societe">
<option> </option>
<option selected="selected" value="001"> 001 </option>
<option value="002"> 002 </option>
</select>
</div>
</li>
<li class="form-line" id="id_5">
<label class="form-label-left" id="label_5" for="input_5"> Année </label>
<div id="id_5" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_5" name="q5_annee5">
<option> </option>
<option selected="selected" value="2010 "> 2010 </option>
<option value="2011 "> 2011 </option>
<option value="2012 "> 2012 </option>
<option value="2013 "> 2013 </option>
<option value="2014 "> 2014 </option>
<option value="2015 "> 2015 </option>
<option value="2016 "> 2016 </option>
<option value="2017 "> 2017 </option>
<option value="2018 "> 2018 </option>
<option value="2019 "> 2019 </option>
<option value="2020"> 2020 </option>
</select>
</div>
</li>
<li class="form-line" id="id_4">
<label class="form-label-left" id="label_4" for="input_4"> Type d'absence </label>
<div id="id_4" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_4" name="q4_typeDabsence">
<option> </option>
<option value="CP"> CP </option>
<option value="RTT"> RTT </option>
<option value="CSANC"> CSANC </option>
<option value=" "> </option>
</select>
</div>
</li>
<li class="form-line" id="id_7">
<div id="id_7" class="form-input-wide">
<div style="margin-left:156px" class="form-buttons-wrapper">
<button id="input_7" type="submit" class="form-submit-button">
Afficher les absences
</button>
</div>
</div>
</li>
<li style="display:none">
Should be Empty:
<input type="text" name="website" value="" />
</li>
</ul>
</div>
<input type="hidden" id="simple_spc" name="simple_spc" value="1945958129" />
</form>
will5555
Messages postés
332
Date d'inscription
samedi 2 août 2008
Statut
Membre
Dernière intervention
20 août 2013
45
15 juil. 2010 à 16:27
15 juil. 2010 à 16:27
La page actuelle où se trouve tous le code comment s'appelle-t-elle?
15 juil. 2010 à 10:08
Voici le code du fichier html:
<script src="http://www.jotform.com/min/g=jotform&" type="text/javascript"></script>
<script type="text/javascript">
JotForm.init(function(){
JotForm.description('input_3', 'Saisir le matricule recherché');
});
</script>
<link type="text/css" rel="stylesheet" href="https://www.jotform.com/css/styles/form.css?v3"/>
<link href="https://www.jotform.com/css/calendarview.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.form-label{
width:150px !important;
}
.form-label-left{
width:150px !important;
}
.form-line{
padding:10px;
}
.form-label-right{
width:150px !important;
}
.form-all{
width:650px;
color:#A52A2A !important;
font-family:Verdana;
font-size:12px;
}
</style>
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
<meta name="HandheldFriendly" content="true" /><form class="jotform-form" action="https://www.jotform.com/submit.php" method="post" name="form_1945958129" id="1945958129" accept-charset="utf-8">
<input type="hidden" name="formID" value="1945958129" />
<div class="form-all">
<ul class="form-section">
<li id="id_1" class="form-input-wide">
<div class="form-header-group">
<h2 id="header_1" class="form-header">
Recherche d'absences pour un collaborateur
</h2>
</div>
</li>
<li class="form-line" id="id_3">
<label class="form-label-left" id="label_3" for="input_3"> Matricule </label>
<div id="id_3" class="form-input">
<input type="text" class="form-textbox validate[Alphanumérique]" id="input_3" name="q3_matricule3" size="10" maxlength="10" />
</div>
</li>
<li class="form-line" id="id_8">
<label class="form-label-left" id="label_8" for="input_8"> Société </label>
<div id="id_8" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_8" name="q8_societe">
<option> </option>
<option selected="selected" value="001"> 001 </option>
<option value="002"> 002 </option>
</select>
</div>
</li>
<li class="form-line" id="id_5">
<label class="form-label-left" id="label_5" for="input_5"> Année </label>
<div id="id_5" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_5" name="q5_annee5">
<option> </option>
<option selected="selected" value="2010 "> 2010 </option>
<option value="2011 "> 2011 </option>
<option value="2012 "> 2012 </option>
<option value="2013 "> 2013 </option>
<option value="2014 "> 2014 </option>
<option value="2015 "> 2015 </option>
<option value="2016 "> 2016 </option>
<option value="2017 "> 2017 </option>
<option value="2018 "> 2018 </option>
<option value="2019 "> 2019 </option>
<option value="2020"> 2020 </option>
</select>
</div>
</li>
<li class="form-line" id="id_4">
<label class="form-label-left" id="label_4" for="input_4"> Type d'absence </label>
<div id="id_4" class="form-input">
<select class="form-dropdown" style="width:150px" id="input_4" name="q4_typeDabsence">
<option> </option>
<option value="CP"> CP </option>
<option value="RTT"> RTT </option>
<option value="CSANC"> CSANC </option>
<option value=" "> </option>
</select>
</div>
</li>
<li class="form-line" id="id_7">
<div id="id_7" class="form-input-wide">
<div style="margin-left:156px" class="form-buttons-wrapper">
<button id="input_7" type="submit" class="form-submit-button">
Afficher les absences
</button>
</div>
</div>
</li>
<li style="display:none">
Should be Empty:
<input type="text" name="website" value="" />
</li>
</ul>
</div>
<input type="hidden" id="simple_spc" name="simple_spc" value="1945958129" />
<script type="text/javascript">
document.getElementById("si" + "mple" + "_spc").value = "1945958129-1945958129";
</script>
</form>