[PHP]
<?php
//La classe du formulaire pour ajouter le contenu
include 'class.forms.php';
$iforms = new forms();
?>
<form id="forms-message" method="post" action="<?php $_SERVER['PHP_SELF'];?>" style="margin-left:10px;">
<?php print $iforms->msg_constructor();?>
<fieldset>
<table>
<tr>
<td class="label"><label for="subject">Sujet(*) :</label></td>
</tr>
<tr>
<td><input type="text" id="subject" name="subject" class="ui-widget-content ui-corner-all" value="" size="50" /></td>
</tr>
<tr>
<td class="label"><label for="contentmsg" class="inlinelabel">Contenu (*):</label></td>
</tr>
<tr>
<td><textarea name="content" id="contentmsg" class="ui-widget-content ui-corner-all" cols="50" rows="10"></textarea></td>
</tr>
</table>
</fieldset>
<div style="margin:5px;">
<input type="submit" class="ui-state-default ui-corner-all" name="submit"value="Enregistrer" />
</div>
</form>
Ensuite créer un fichier nommé class.forms.php
[PHP]
<?php
class forms{
/**
* subject
* @var string
*/
public $subject;
/**
* contentmsg
* @var string
*/
public $content;
/**
* Instance db
* @var void
*/
private $db;
/**
* Constructor
*/
function __construct(){
/**
* Le sujet de notre message
*/
if(isset($_POST['subject'])){
$this->subject = magixcjquery_form_helpersforms::inputCleanQuote($_POST['subject']);
}
/**
* Le contenu de notre message
*/
if(isset($_POST['content'])){
//Nettoyage du contenu (voir helpers forms)
$this->content = magixcjquery_form_helpersforms::inputClean($_POST['content']);
}
/**
* test pour vérifier si la classe existe bien ;)
*/
if(class_exists('db_forms')){
$this->db = new db_forms();
}
}
/**
* Insertion d'une nouveau message
* @access public
*/
public function msg_constructor(){
/**
* On test les variables
*/
if(isset($this->subject) AND isset($this->content)){
/**
* Si les champs sont vide, on retourne un message d'erreur
*/
if(empty($this->subject) OR empty($this->content)){
$fetch = '<div class="ui-state-error ui-corner-all" style="font-weight:bold;width:500px;padding:5px;">Les champs ne sont pas tous rempli</div>';
}else{
/**
* On insert et retourne un message
*/
$this->db->i_message(
$this->subject,
$this->content
);
$fetch = '<div class="ui-state-highlight ui-corner-all" style="font-weight:bold;width:500px;padding:5px;">Le message à été enregistré avec succès</div>';
}
return $fetch;
}
}
}
/*La classe de nos fonctions pour interagir sur la base de donnée*/
class db_forms{
/**
*
* @var void
*/
protected $layer;
//Constructor
function __construct(){
//Appel de magix DB
$this->layer = new magixcjquery_magixdb_layer();
}
/**
* ######################## New Message ####################
*/
public function i_message($subject,$content){
// Notre requête SQL avec nos deux paramètres
$sql = 'INSERT INTO message (subject, content) VALUE (:subject, :content)';
$this->layer->insert($sql,
array(
':subject'=> $subject,
':content'=> $content
));
}
}
?>
ps: Correctif ce 23 Avril 2010 avec l'insertion d'un pack complet
