parent
1797f1c701
commit
20c93593d8
@ -0,0 +1,88 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<?php
|
||||
// var titre_de_la_page : chaine;
|
||||
// titre_de_la_page = "Administration du Blog";
|
||||
$titre_de_la_page = "Administration du Blog";
|
||||
$class_de_la_page = "admin";
|
||||
//si on ne veut pas avoir un affichge de message d'erreur on peut commencer la ligne par @
|
||||
@ $mysqli = new mysqli("localhost", "root", "", "b1bak");
|
||||
if ($mysqli->connect_errno) {
|
||||
$class_de_la_page = "error";
|
||||
}
|
||||
?>
|
||||
<head>
|
||||
<title><?php echo $titre_de_la_page ?></title>
|
||||
<style>
|
||||
body { font-family:sans-serif; font-size:10px; }
|
||||
.error { background-color:#FFCC99;}
|
||||
.success { background-color:#99FF99;}
|
||||
</style>
|
||||
</head>
|
||||
<body class="<?php echo $class_de_la_page; ?>">
|
||||
<h1><?php echo $titre_de_la_page ?></h1>
|
||||
<?php
|
||||
// vérification des saisies
|
||||
$titre_de_article = "";
|
||||
$contenu_de_article = "";
|
||||
$erreur_de_soumission = false;
|
||||
if(!empty($_POST['titre'])) {
|
||||
$titre_de_article = $_POST['titre'];
|
||||
}
|
||||
elseif(isset($_POST['titre'])) {
|
||||
$erreur_de_soumission = true;
|
||||
}
|
||||
if(!empty($_POST['contenu'])) {
|
||||
$contenu_de_article = $_POST['contenu'];
|
||||
}
|
||||
elseif(isset($_POST['contenu'])) {
|
||||
$erreur_de_soumission = true;
|
||||
}
|
||||
if($erreur_de_soumission) {
|
||||
echo "<div class='error'>Il manque quelque chose ! </div>";
|
||||
}
|
||||
elseif(!empty($titre_de_article)) {
|
||||
$resultat = $mysqli->query("
|
||||
INSERT INTO `article` (`id_article`, `titre`, `contenu`, `date`)
|
||||
VALUES (NULL, '".$titre_de_article."', '".$contenu_de_article." ', NOW());
|
||||
");
|
||||
if($resultat) {
|
||||
echo "<div class='success'>Article enregistré !</div>";
|
||||
$titre_de_article = "";
|
||||
$contenu_de_article = "";
|
||||
}
|
||||
}
|
||||
?>
|
||||
<form action="" method="post">
|
||||
<label for="titre">le titre</label>
|
||||
<br/>
|
||||
<input type="text" required
|
||||
id="titre"
|
||||
name="titre" value="<?php echo $titre_de_article ?>" />
|
||||
<br/>
|
||||
<label for="contenu">le contenu</label>
|
||||
<br/>
|
||||
<textarea required
|
||||
id="contenu" name="contenu"><?php echo $contenu_de_article; ?></textarea>
|
||||
<br/>
|
||||
<button type="submit">envoyer</button>
|
||||
</form>
|
||||
|
||||
<?php
|
||||
// si une erreur se produit alors un numero d'erreur est intialisé
|
||||
if ($mysqli->connect_errno)
|
||||
{
|
||||
echo "Échec lors de la connexion à MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
|
||||
}
|
||||
else
|
||||
{
|
||||
$resultat = $mysqli->query('SELECT * FROM `article`');
|
||||
echo "<br/>".$resultat->num_rows." articles dans la base";
|
||||
while ( $ligne_de_resultat = $resultat->fetch_array(MYSQLI_ASSOC) )
|
||||
{
|
||||
echo "<h2>".$ligne_de_resultat['titre']."</h2>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,132 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<title>Mon Blog</title>
|
||||
<style>
|
||||
body { font-family:sans-serif; font-size:10px; }
|
||||
.comments { margin-top : 2rem; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Mon Blog</h1>
|
||||
<!-- article -->
|
||||
<article>
|
||||
<?php
|
||||
// utliser mysqli pour se connecter à la base de donnée
|
||||
// pour mémoire https://www.php.net/manual/fr/book.mysqli.php
|
||||
|
||||
// se connecter
|
||||
// à savoir par défait sur une installation xampp
|
||||
// l'utilisateur "root" est définit avec un mot de passe vide
|
||||
// https://www.php.net/manual/fr/mysqli.quickstart.connections.php
|
||||
$mysqli = new mysqli("localhost", "root", "", "b1bak");
|
||||
// si une erreur se produit alors un numero d'erreur est intialisé
|
||||
if ($mysqli->connect_errno) {
|
||||
echo "Échec lors de la connexion à MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
|
||||
}
|
||||
//sinon on est connecté
|
||||
else {
|
||||
echo "connecté à ";
|
||||
}
|
||||
echo $mysqli->host_info . "\n";
|
||||
|
||||
// aller chercher le premier article dans la table article
|
||||
// SELECT * FROM `article`
|
||||
// appeler la méthode query de mysqli
|
||||
// https://www.php.net/manual/fr/mysqli.quickstart.statements.php
|
||||
$resultat = $mysqli->query('SELECT * FROM `article`');
|
||||
// récupérer le premier l'article.
|
||||
$ligne_de_resultat = $resultat->fetch_array(MYSQLI_ASSOC);
|
||||
// afficher en deboguage mon resultat
|
||||
/*
|
||||
echo "<pre>";
|
||||
print_r($ligne_de_resultat);
|
||||
echo "</pre>";
|
||||
*/
|
||||
// afficher l'article
|
||||
?>
|
||||
<h2><?php echo $ligne_de_resultat['titre']; ?></h2>
|
||||
<p><?php echo $ligne_de_resultat['contenu']; ?></p>
|
||||
<footer class="date">publié le <?php echo $ligne_de_resultat['date']; ?></footer>
|
||||
</article>
|
||||
<pre>
|
||||
<?php
|
||||
//print_r($_POST);
|
||||
// si le pseudo n'est pas déifnit l'intialiser à vide
|
||||
$pseudo = "";
|
||||
$erreur_pseudo = false;
|
||||
// sinon récupérer le pseudo
|
||||
if(!empty($_POST['pseudo']))
|
||||
{
|
||||
$pseudo = $_POST['pseudo'];
|
||||
}
|
||||
//si le champs est vide mais initialisé alors c'est une erreur
|
||||
elseif(isset($_POST['pseudo']))
|
||||
{
|
||||
$erreur_pseudo = true;
|
||||
}
|
||||
// si l'email n'est pas déifnit l'intialiser à vide
|
||||
$email = "";
|
||||
$erreur_email = false;
|
||||
// sinon récupérer l'email
|
||||
if(!empty($_POST['courriel']))
|
||||
{
|
||||
$email = $_POST['courriel'];
|
||||
//vérrifier avec une expression rationnelle que c'est bine un email
|
||||
// version compliquée :^([a-zA-Z0-9]+(([\.\-\_]?[a-zA-Z0-9]+)+)?)\@(([a-zA-Z0-9]+[\.\-\_])+[a-zA-Z]{2,4})$
|
||||
if(!preg_match('/^[a-zA-Z0-9]+@[a-zA-Z0-9-_]+\.[a-zA-Z0-9]+$/',$email)) {
|
||||
$erreur_email = true;
|
||||
}
|
||||
}
|
||||
// si le commentaire n'est pas déifnit l'intialiser à vide
|
||||
$commentaire = "";
|
||||
// sinon récupérer le commentaire
|
||||
if(!empty($_POST['commentaire']))
|
||||
{
|
||||
$commentaire = $_POST['commentaire'];
|
||||
// s'assurer qu'il n y'a pas de script ou d'attaque dedans
|
||||
//$commentaire = htmlentities($commentaire);
|
||||
$commentaire = strip_tags($commentaire);
|
||||
//print_r($commentaire);
|
||||
}
|
||||
?>
|
||||
</pre>
|
||||
<div class="comments">
|
||||
<form action="" method="post">
|
||||
<label for="pseudo">votre pseudo</label>
|
||||
<br/>
|
||||
<?php
|
||||
if($erreur_pseudo)
|
||||
{
|
||||
echo "<div class='error'>Vous devez saisir un pseudo</div>";
|
||||
}
|
||||
?>
|
||||
<input type="text" required
|
||||
id="pseudo"
|
||||
name="pseudo"
|
||||
value="<?php echo $pseudo; ?>" />
|
||||
<br/>
|
||||
<label for="courriel">votre courriel</label>
|
||||
<br/>
|
||||
<?php
|
||||
if($erreur_email)
|
||||
{
|
||||
echo "<div class='error'>Vous devez saisir un email valide</div>";
|
||||
}
|
||||
?>
|
||||
<input type="email" id="courriel"
|
||||
name="courriel"
|
||||
value="<?php echo $email; ?>" />
|
||||
<br/>
|
||||
<label for="commentaire">votre commentaire</label>
|
||||
<br/>
|
||||
<textarea required
|
||||
id="commentaire" name="commentaire"><?php
|
||||
echo $commentaire;
|
||||
?></textarea>
|
||||
<br/>
|
||||
<button type="submit">envoyer</button>
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in new issue