<?xml 
version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://arts-numeriques.codedrops.net/spip.php?page=backend.xslt" ?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel xml:lang="fr">
	<title>Arts num&#233;riques</title>
	<link>https://arts-numeriques.codedrops.net/</link>
	<description>artsnumeriques est le support des cours de St&#233;phane Noel, professeur &#224; l'&#233;cole de recherche graphique.</description>
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>
	<atom:link href="http://arts-numeriques.codedrops.net/spip.php?id_mot=55&amp;page=backend" rel="self" type="application/rss+xml" />




<item xml:lang="fr">
		<title>Un formulaire avec entr&#195;&#169;e dans une base mysql</title>
		<link>http://arts-numeriques.codedrops.net/Plus-un-formulaire-avec-entree</link>
		<guid isPermaLink="true">http://arts-numeriques.codedrops.net/Plus-un-formulaire-avec-entree</guid>
		<dc:date>2008-11-25T11:19:03Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>St&#233;phane Noel</dc:creator>


		<dc:subject>Php</dc:subject>
		<dc:subject>Mysql</dc:subject>

		<description>
&lt;p&gt;Un script simple contenant tout-en-un un formulaire, son script de traitement et la liste du contenu de la base. Minimal pour voir toutes les &#195;&#169;tapes et les pr&#195;&#169;cautions d'usage. &lt;br class='autobr' /&gt; Toutes les parties rassembl&#195;&#169;es ici sont parfois plac&#195;&#169;es dans des fichiers distincts : formulaires et traitement par exemple peuvent &#195;&#170;tre dissoci&#195;&#169;s facilement pour des raisons de facilit&#195;&#169;. &lt;br class='autobr' /&gt;
Le script ci pr&#195;&#169;sent contient des informations de configuration que vous devez adapter &#195; votre environnement de test (&#8230;)&lt;/p&gt;


-
&lt;a href="http://arts-numeriques.codedrops.net/-Exemples-67-" rel="directory"&gt;Exemples&lt;/a&gt;

/ 
&lt;a href="http://arts-numeriques.codedrops.net/+-Php-+" rel="tag"&gt;Php&lt;/a&gt;, 
&lt;a href="http://arts-numeriques.codedrops.net/+-Mysql-+" rel="tag"&gt;Mysql&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p&gt;Un script simple contenant tout-en-un un formulaire, son script de traitement et la liste du contenu de la base. Minimal pour voir toutes les &#195;&#169;tapes et les pr&#195;&#169;cautions d'usage.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p&gt;Toutes les parties rassembl&#195;&#169;es ici sont parfois plac&#195;&#169;es dans des fichiers distincts : formulaires et traitement par exemple peuvent &#195;&#170;tre dissoci&#195;&#169;s facilement pour des raisons de facilit&#195;&#169;.&lt;/p&gt;
&lt;p&gt;Le script ci pr&#195;&#169;sent contient des informations de configuration que vous devez adapter &#195; votre environnement de test pour utiliser les scipts :
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; le nom du serveur (souvent localhost)
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; le nom d'utilisateur et le mot de passe
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; la base est &#195; cr&#195;&#169;er manuellement, elle s'appelle &#034;mysql_tests&#034;&lt;/p&gt;
&lt;p&gt;Une fois que c'est fait, &#195;&#167;a devrait marcher !&lt;/p&gt;
&lt;p&gt;Le code est comment&#195;&#169; pour que vous puissiez lire ligne par ligne ce qu'il fait.&lt;/p&gt;
&lt;p&gt;Le zip attach&#195;&#169; &#195; cet article contient le script complet avec un css.&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;&lt;?php // ouverture de la connexion - ici pour mamp - $hote=&#034;localhost&#034;; $utilisateur=&#034;root&#034;; $password=&#034;root&#034;; // ouverture de la connexion $connexion = mysql_connect($hote,$utilisateur,$password); // choix de la base CD_test // ici il faudrait pour &#195;&#170;tre complet tester que la base existe, au besoin la creer // si vous utilisez ce script, vous devez donc cr&#195;&#169;er manuellement la table mysql_tests dans phpmyadmin mysql_select_db('mysql_tests',$connexion); // on teste pour voir si la base existe $requete=&#034;SELECT * FROM record;&#034;; $requete=mysql_query($requete,$connexion); // si la table n'existe pas, la cr&#195;&#169;er if (!$requete){ // contient un id auto-incrementiel, un nom, un contenu, et une date $requete=&#034;CREATE TABLE record (id int(7) NOT NULL auto_increment, nom varchar(255), contenu TEXT, date datetime, PRIMARY KEY (id))&#034;; mysql_query($requete,$connexion); } // initialiser la variable message $message=&#034;&#034;; // tester que post contient ce qui nous interesse, c'est &#195; dire au moins une array associative &#034;entrer&#034; // traiter ce qui a &#195;&#169;t&#195;&#169; envoy&#195;&#169; par le formulaire if(isset($_POST['entrer'])){ // on s&#195;&#169;curise le contenu avec addslashes $contenu=addslashes($_POST['contenu']); // on pr&#195;&#169;pare une date $date = date(&#034;Y-m-d H:m:s&#034;); // on ins&#195;&#168;re $requete=&#034;INSERT INTO record ( nom,contenu,date ) VALUES ('entree','$contenu','$date')&#034;; $envoi=mysql_query($requete,$connexion); // si c'est reussi, le dire dans le message if($envoi){ $message .=&#034;&lt;div id='message'&gt;Nouveau contenu entr&#195;&#169;&lt;/div&gt;&#034;; } } ?&gt; &lt;!DOCTYPE html PUBLIC &#034;-//W3C//DTD XHTML 1.0 Transitional//EN&#034; &#034;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#034;&gt; &lt;html xmlns=&#034;http://www.w3.org/1999/xhtml&#034;&gt; &lt;head&gt; &lt;meta http-equiv=&#034;Content-Type&#034; content=&#034;text/html;charset=utf-8&#034;/&gt; &lt;title&gt;Formulaire simple d'&#195;&#169;change avec une base de donn&#195;&#169;es&lt;/title&gt; &lt;link rel=&#034;stylesheet&#034; type=&#034;text/css&#034; href=&#034;style.css&#034;/&gt; &lt;/head&gt; &lt;body&gt; &lt;div id=&#034;general&#034;&gt; &lt;h1&gt;Fill base&lt;/h1&gt; &lt;p&gt; Cette page contient tout-en-un un formulaire, son script de traitement et la liste de son contenu. Un script tr&#195;&#168;s minimal qui permet de voir toutes les &#195;&#169;tapes. &lt;/p&gt; &lt;?php echo $message; ?&gt; &lt;form method=&#034;post&#034; action=&#034;form_et_table.php&#034;&gt; &lt;textarea name=&#034;contenu&#034;&gt;&lt;/textarea&gt; &lt;input type=&#034;submit&#034; name=&#034;entrer&#034; value=&#034;Entrer dans la base&#034; /&gt; &lt;/form&gt; &lt;hr /&gt; &lt;h2&gt;Contenu de la base&lt;/h2&gt; &lt;table&gt; &lt;?php $larequete=&#034;SELECT * FROM record ORDER BY id DESC&#034;; $requete = mysql_query($larequete,$connexion); $total = mysql_num_rows($requete); if ($total) { while($row = mysql_fetch_array($requete)) { // ecriture des tags de retour echo &#034;&lt;tr&gt;\n&#034;; echo &#034;&lt;td&gt;&#034;.$row['id'].&#034;&lt;/td&gt;&#034;; echo &#034;&lt;td&gt;&#034;.$row['nom'].&#034;&lt;/td&gt;&#034;; echo &#034;&lt;td&gt;&#034;.$row['contenu'].&#034;&lt;/td&gt;&#034;; echo &#034;&lt;td&gt;&#034;.$row['date'].&#034;&lt;/td&gt;&#034;; echo &#034;\n&lt;/tr&gt;\n&#034;; } } else { echo &#034;&lt;tr&gt;&lt;td&gt;pas d'entr&#195;&#169;e&lt;/td&gt;&lt;/tr&gt;&#034;; } ?&gt; &lt;/table&gt; &lt;/div&gt; &lt;/body&gt; &lt;/html&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<enclosure url="http://arts-numeriques.codedrops.net/IMG/zip/form_table_liste.zip" length="2208" type="application/zip" />
		

	</item>



</channel>

</rss>
