Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour a tous!
je souhaite faire un dictionnaire de mots, auquels on peut ajouter des synonymes.
Ces mots et synonymes sont enregistrés dans un fichier txt.
Par la suite, on pourra continuer d'ajouter des mots et des synonymes, rechercher un mot via la liste alphabétique et supprimer si l'on souhaite des mots ou synonymes.
J'ai travaillé sur le code ci-dessous, mais le fait est qu'une partie de mon code s'affiche, je ne comprends pas.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
<title>Dictionnaire de Cuisine et synonymes</title>
<link rel="stylesheet" type="text/css" media="all" href="style.css" />
</head>
<body><h1>Dictionnaire de Cuisine et synonymes</h1>
<?
set_magic_quotes_runtime(0);
$fichier = 'dico_cuisine.txt';switch ($_POST['action'])
{
case "ecrire":function formate_machaine($chaine)
{$chaine = str_replace('\n', '', $chaine);
$chaine = str_replace('|', '', $chaine);
$chaine = strip_tags($chaine);
$chaine = trim($chaine);
$chaine = substr($chaine, 0, 100);return $chaine;
}
$mot = formate_machaine($_POST['mot']);
$synonyme = formate_machaine($_POST['synonyme']);
if($mot != '' and $synonyme != '')
{
if(filesize($fichier)>3000) $mode = 'w'; else $mode = 'a';$fp = fopen($fichier, $mode);
fputs($fp, "$mot|$synonyme");
fputs($fp, "\n");
fclose($fp);echo '<p>Mot et synonyme ajoutés !</p>';
echo '<p><a href="'.$_SERVER['PHP_SELF'].'">Retour</a></p>';
}
else
{
echo '<p>Erreur, veuillez remplir les deux champs !</p>';
echo '<p><a href="'.$_SERVER['PHP_SELF'].'">Retour</a></p>';
} break;
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="ecriture"><input type="hidden" name="action" value="ecrire" />
<table summary="Ecriture dans le fichier" border="1">
<tr class="titre">
<td colspan="2">Ecriture dans le fichier</td>
</tr>
<tr>
<td>Mot</td>
<td>
<input type="text" name="mot" size="30" maxlength="30" />
</td> </tr>
<tr> <td>Synonyme</td>
<td>
<input type="text" name="synonyme" size="30" maxlength="100" />
</td> </tr>
<tr> <td> </td>
<td>
<input type="submit" name="envoyer" value="Et Hop!" />
</td></tr></table>
</form>
<table summary="Lecture du fichier"><tr class="titre">
<td colspan="2">Lecture du fichier</td>
</tr>
<?
if(file_exists($fichier))
{
$fp = fopen($fichier, 'r');
while (!feof($fp))
{
$ligne = fgets($fp, 4096);
$liste = explode('|', $ligne);
$mot = htmlentities($liste[0]);
$synonyme = htmlentities($liste[1]);
if(get_magic_quotes_gpc())
{
$mot = stripslashes($mot);
$synonyme = stripslashes($synonyme);
}
if($mot != '' and $synonyme != '')
{
echo '<tr>';
echo '<td>' . $mot . '</td>';
echo '<td>' . $synonyme . '</td>';
echo '</tr>';
}
}
fclose($fp);
}
else
{
echo '<p>Fichier introuvable ! Lecture stoppée.</p>';
}
?>
</table>
<?
break;
}
?>
</body>
</html>
Si vous avez une idée pour resoudre mon probleme
Un grand merci a toutes les bonnes volontés
Hors ligne
Saluton,
Parce que les balises php c'est <?php ?> et non <? ?>.
Pourquoi faire ça via un fichier texte alors qu'une base de données t'offrirait toute la souplesse du SQL ?
Tu n'est pas obligé d'utiliser MySQL, SQLite est aussi disponible et ils sont tous les deux supportés par PDO.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Pages :: 1