Vous devez être connecté et donner une réaction ( Like ) au sujet pour débloquer les liens de téléchargements...
Sign in to follow this  
Nassa

Sujet à réécrire : PHP - HTML RIP Système News Par BDD

Recommended Posts

Bonjours à tous,Aujourd'hui je vais vous apprendre à crée un système de news par BDD .Voici les pages que nous allons crée :- config.php- add_news.php- envoie_news.php- index.phpVoici pour la confi.php

// Information Base de Donnée		$host = 'localhost'; //Adresse IP de votre BDD (Par défauts localhost)		$user = 'root'; //Nom d'utilisateur de la BDD (Par défauts root)		$pass = ''; // Mot de passe de la BDD		$dbcms = 'news'; //Nom de la BDD ou est Stocker les information des news (Par défaut news)

Maintenant nous allons crée un formulaire qui enverras les information à la BDD add_news.php :

<?php					$bdd = new PDO('mysql:host='$host';dbname='.$dbcms.'', ''.$user.'',''.$pass.''); //Connexion à la BDD					?>						
Infos							
Pseudo : 							
Titre : 						
Contenu de la news							
Contenu : 						

Maintenant nous allons passer à la récupération des champs et nous allons les stocker dans une table envoie_news.php:

<?php require('config.php');// On commence par récupérer les champs if(isset($_POST['auteur']))      $auteur=$_POST['auteur'];else      $auteur="";if(isset($_POST['titre']))      $titre=$_POST['titre'];else      $titre="";if(isset($_POST['contenu']))      $contenu=$_POST['contenu'];else      $contenu="";// On vérifie si les champs sont vides if(empty($auteur) OR empty($titre) OR empty($contenu))     {     echo 'Attention, aucun champs ne peut rester vide !';     } // Aucun champ n'est vide, on peut enregistrer dans la table else          {        // connexion à la base$db = new PDO('mysql:host='$host';dbname='.$dbcms.'', ''.$user.'',''.$pass.'') or die('Erreur de connexion '.mysql_error());// sélection de la base      mysql_select_db($dbcms)  or die('Erreur de selection '.mysql_error());          // on écrit la requête sql     $sql = "INSERT INTO billets(id, titre, contenu, date_creation, auteur) VALUES('$ID','$titre','$contenu',NOW(),'$auteur')";          // on insère les informations du formulaire dans la table     mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); header('Location: index.php');  	   exit();	       mysql_close();  // on ferme la connexion     }  ?>

Maintenant que nos information sont stocker dans la BDD nous allons allez les chercher index.php :

<?php							// Connexion à la base de données							try							{								$bdd = new PDO('mysql:host=localhost;dbname='.$dbcms.'', 'root', '');							}							catch(Exception $e)							{									die('Erreur : '.$e->getMessage());							}							// On récupère les 5 dernière news							$req = $bdd->query('SELECT id, titre, auteur, contenu, DATE_FORMAT(date_creation, \'%d/%m/%Y à %Hh%imin\') AS date_creation_fr FROM billets ORDER BY date_creation DESC LIMIT 0, 5');							while ($donnees = $req->fetch())							{							?>                     <?php echo htmlspecialchars($donnees['titre']); ?>		        
<?php								// On affiche le contenu de la news								echo nl2br(htmlspecialchars($donnees['contenu']));								?>

Auteur : <?php echo htmlspecialchars($donnees['auteur']); ?>        

	<?php							} // Fin de la boucle de la news on la répète							$req->closeCursor();						?>

Biensure voici le SQl qui va avec pour ne pas afficher d'erreur :

CREATE TABLE `billets` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `titre` varchar(255) NOT NULL,  `contenu` text NOT NULL,  `date_creation` datetime NOT NULL,  `auteur` varchar(255) NOT NULL,  PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;

Tuto réaliser par Nassa pour Funky .

Share this post


Link to post
Share on other sites

Euh .. Normal qu'il y a du mysql_xx au milieux de PDO ? :o Et aussi pourquoi faire passer les POST dans des variables si c'est pour les vérifier après ? Il aurait été préférable de passer les POST en variables en même temps que tu vérifie. Ensuite j'aurais plutôt vu une variable de connexion dans la config, puisque tu utilises plusieurs fois la connexion.

Et pour finir il vaut mieux définir toutes les variables comme NULL plutôt que de fermer la connexion.

Et je pense que c'est un code pompé vu le mélange de mysql_xx et de PDO.

Bonne chance tout de même.

Share this post


Link to post
Share on other sites

Bonjour,

 

Le partage / tutoriel ici présent doit être réécrit. Le lien de téléchargement est probablement mort... Message automatique de masse...

 

Cordialement,

ASIKOO

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this