[PHP] probleme basique :/
zeelox
Messages postés
119
Date d'inscription
Statut
Membre
Dernière intervention
-
BioK03 Messages postés 651 Date d'inscription Statut Membre Dernière intervention -
BioK03 Messages postés 651 Date d'inscription Statut Membre Dernière intervention -
Hello ;)
voila j'ai un probleme dans mon code php :/
voici le message d'erreur :
et voila mon code php+html :
si quelqu'un a une solution je suis preneur :D merci d'avance ^^
--
Zeelox(TM) | Graphic Designer
voila j'ai un probleme dans mon code php :/
voici le message d'erreur :
Notice: Undefined index: title in C:\wamp\www\blog\admin\edit.php on line 3
et voila mon code php+html :
<?php
if (trim($_POST['title'])) {
$fileName = strtolower($_POST['title']);
$originCharacters = 'àçéèêîôù';
$destinCharacters = 'aceeeiou';
$fileName = strtr($fileName, $originCharacters, $destinCharacters);
$fileName = preg_replace('/[^a-z0-9-]/','-', $fileName);
$fileName = 'posts/'.$fileName.'.md';
$metaData['title'] = $_POST['title'];
$fileContent = json_encode($metaData)."\n";
$fileContent.= strip_tags($_POST['content']);
if (file_put_contents($fileName, $fileContent)) {
header('Location : main/php');
exit;
}else {
$err = '<p style="color:red;border:1px solid black;background-color:yellow;width:285px;padding:5px;">Impossible d\'enregistrer le fichier'.$fileName.'</p>';
}
} else{
$err = '<p style="color:red;border:1px solid black;background-color:yellow;width:285px;padding:5px;">Titre inssufisant</p>';
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Website</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Bienvenue dans le blog minecraft !">
</head>
<body>
<h1>Creer / editer un article</h1>
<?php
if(isset($err)) {
echo $err;
}
?>
<p>ici vous pouvez modifer ou creer des articles a votre guise</p>
<form method="post">
<label for="title">Titre de l'article</label> <input type="text" name="title" id="title">
<br>
<label for="content">Contenu</label>
<br>
<textarea id="content" rows="25" cols="60" name="content"></textarea>
<br>
<input type="submit" value="Creer l'article">
</form>
</body>
</html>
si quelqu'un a une solution je suis preneur :D merci d'avance ^^
--
Zeelox(TM) | Graphic Designer
2 réponses
-
Bonjour, essayez :
if (isset($_POST['title'] && trim($_POST['title'])) {
Cela devrait fonctionner.
Cordialement-
-
-
-
-
La fonction isset permet de savoir si il y a quelque chose dans la case 'title' du tableau $_POST. Il faut donc regarder si il y a quelque chose (donc si on l'a set à la page précédente via par exemple un formulaire) avant de l'utiliser. Si elle n'est pas set, isset retourne false et on ne rentre pas dans la boucle.
En espérant avoir été clair, bonne soirée :)
-
-
Ce que tu transmet avec la méthode POST est bien nommé "title" ?