Bouton qui enregistre un textarea php

vincent621200 -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je dois réaliser un site web et plus particulièrement un sous menu dans lequel apparait une dizaine de fieldsets avec cases à cocher et boutons :
http://hpics.li/48306f8
et je voudrais qu'en cochant les cases et en cliquant sur valider, ça mémorise le contenu du textarea ( une sorte de mémo des choses à faire) et qu'en cliquant sur supprimer, ça supprime les textarea sélectionner.

Merci à ceux qui pourront m'aider :)

A voir également:

18 réponses

SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Salut,

Alors d'après ce que j'ai compris
Tu as ta page saisir.php avec tes fieldsets et tes textarea :

<fieldset>
<legend>Saisir Description</legend>

<form name="situation" method="post" action="transfert.php"> //la page ou
envoyé le formulaire
<table>
<tr><th>Description</th></tr>
<tr><td><textarea name="description" maxlength="15000" </textarea>
</td></tr>
</table>


transfert.php :

//Affectation des valeurs saisies dans des variables
$description=$_POST['description'];

if(description == "")
{
header("Location: saisir.php");
}
else
{

// Connexion à la base de données
$db=mysql_connect("base","root","root") or die("Erreur de connexion à MySql !".mysql_error());

// Ouverture de la base
mysql_select_db("base1",$db) or die("Erreur lors de la connexion à la base.".mysql_error());

//Requête d'insertion des valeurs dans la table
$sql="INSERT INTO table (description) VALUES( '$description')";

// Exécution de la requête INSERT
mysql_query($sql);

//fermeture de la requete
$sql->closeCursor;

}

<table>
<?php
$result = mysql_query("SELECT description from table") or die ("Erreur lors de l'exécution de la requete sql !".mysql_error());
While ($ligne = mysql_fetch_array($result))
{
echo "<tr><th>Description</th></tr>
<tr><td><textarea readonly>",$ligne['description'],"</textarea></td></tr>"; //readonly qui permet d'afficher sans le modifier
}
?>
</table>

Voila en espérant que tu es pu comprendre.
N'hésite pas à t'approprier ce code et le modifier.
Bon courage
S'kRo
1
vincent621200
 
    <link rel="stylesheet" media="screen" type="text/css" title="Style" href="../Style.css" />
    </head>
    <body>
        
    <form name="projets" id="projets" method="POST" action="projets.php">
    <!-- tableau sans bordure avec un espace de 15px entre chaque colonne aligné à gauche et de couleur de fond bleu ciel -->
    <table border="0" cellspacing="15" align=right bgcolor=#C4D7ED>   
	<tr>
		<tr>
            <td>
			<h2>Projets :</h2>
                <input type="text" name ="projet1" id="proj1" size="35" autofocus/>
            </td>
            <td>
            <h2>Suppr</h2> 
                <input type="checkbox" name="suppr" id="suppr1" />
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet2" id="proj2" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr2"/>
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet3" id="proj3" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr3"/>
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet4" id="proj4" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr4"/>
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet5" id="proj5" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr5"/>
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet6" id="proj6" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr6"/>
            </td>
		</tr>
        <tr>
            <td>
                <input type="text" name ="projet7" id="proj7" size="35"/>
            </td>
            <td>
                <input type="checkbox" name="suppr" id="suppr7"/>
            </td>
		</tr>
		<tr>
            <td>
                <input type="submit" name="valider" id="valider" value="valider"/>
            </td>
            <td>
                <input type="submit" name="suppr" id="supprimer" value="supprimer"/>
            </td>
		</tr>
        </tr>  
    </table></FORM>    


Je pensais avoir mis le code oO
voila ce que j'ai.
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Ah mais t'as pas de textarea ??
0
vincent621200
 
J'ai essayé avant mais là je ne sais plus quoi faire pour que ça fonctionne ...
est ce que je serai obliger de faire une BDD pour stocker le contenu de mes 'mémos' ?
Et est ce que tu penses que les textarea sont obligatoires pour faire ce que je veux ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Ouai une BDD est obligatoire pour stocker et sortir des saisies.
Les textarea ne sont pas obligatoires, maintenant c'est vrai que c'est bien pour saisir beaucoup de texte, après c'est toi qui voit selon tes préférences et ce que tu maitrises le mieux.
0
vincent621200
 
merci pour tes réponses,
je travaille sur webmatrix actuellement, j'en ai pas l'habitude ...
Je dois mettre quoi dans ma(mes) table(s) ?
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Derien,
Mais désolé de ma question mais webmatrix c'est un éditeur de sites ?
Dans ta table tu dois créer tout les champs nécessaires pour ton mémo, pour tes checkbox et tes input text mais si tu n'as jamais vraiment fait de sql ni vraiment utilisé une BDD : https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql & https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913655-quest-ce-quune-base-de-donnees en esperant que ça t'aidera.

S'kRo
0
vincent621200
 
Oui, il permet de faire des sites à partir de rien ou de bases déjà existantes.
Etant en stage je dois tout faire.
Le sql j'en ai fais en cours mais là je vois pas trop comment gérer la BDD =S
Une table mémo avec comme colonnes : contenu, checkbox peut être suffisante ou pas ?
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Par exemple ta table serait qqchose comme ça :

Mémo(id_mémo, nom_mémo, date_mémo, contenu_mémo)

Par contre les checkbox c'est plus compliqués je te conseille de commencer déja sans et tu les ajoutera aprés.
0
vincent621200
 
j'ai créé la table

et j'ai mis sa dans ma page projets.php :
<?php
$host="localhost";
$log="root";
$password="";
$base="akena";
$connect= mysql_connect($host,$log,$password);
mysql_select_db($base, $connect);
?>

Je ne sais pas si mysql est valable pour webmatrix vu que c'est une BDD intégrée ?
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Si ya une BDD intégré je peux pas trop t'aider vu que je ne connais pas.
Par contre si ton site tu le fait toi même avec des balises et tout le reste et que tu es chez Free tu peux l'héberger gratuitement et te servir de Phpmyadmin (BDD)
0
'
 
J'ai regardé vite fait sur google et apparemment la BBD de webmatrix est bien mysql donc ça devrait aller :)
Je vais regarder pour intégrer la requête après ;)
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Du coup si c'est gérer par le support phpmyadmin se serait mieux car tu pourrai faire tes tables sans requêtes, c'est carrément plus faciles.
0
vincent621200
 
mon tuteur de stage m'a dit que c'était possible via un fichier txt qui stockerait les différentes taches et en supprimant manuellement ( sans bouton) donc j'aimerais que sa fonctionne sauf que quand je valide, sa stock le contenu du textarea dans le fichier txt mais ça les enlèvent du textarea ce que je ne veux pas.
Donc ma question est :
comment faire en sorte que lorsque je valide, le textarea reste avec son contenu ?

voila comment j'ai fais :

 <table border="0" cellspacing="15" align=right bgcolor=#C4D7ED>    
 <tr> 
  <tr> 
            <td> 
   <h2>Projets :</h2> 
                <textarea name ="proj1" id="proj1" rows="20" cols="30" autofocus/></textarea> 
            </td> 
            <td> 
  </tr> 
  <tr> 
            <td> 
                <input type="submit" name="valider" id="valider" value="valider"/> 
            </td> 
  </tr> 
    </tr>   
    </table></FORM>     
    </body> 
</html> 

 <?php 
      
  $contenu1 = fopen('contenu1.txt', 'w'); //On ouvre le fichier     
  if (isset($_POST['proj1'])) 
  {   
   fputs($contenu1, $_POST['proj1']);         //On écrit le contenu de la zone de texte dans le fichier      
   fclose($contenu1);   //On ferme le fichier 
  } 
?> 
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
Ok je vois comment tu veux faire,
tu ouvre ton fichier dans la variable $contenu1, c'est pas bête et si ça marche pq pas après tout, cependant si tu souhaite faire plus de dév web tu vas devoir passer par les BDD

Donc ton système pourquoi pas mais j'ai jamais utilisé ça comme ça donc en regardant ton code je vois juste le 'w' je ne vois pas ce qu'il fait la et dans ton if je vois pas non plus pourquoi la méthode $_POST ? Mais aprés si ça marche ne prend pas en compte ce que je raconte mdr
0
vincent621200
 
'w' permet d'ecrire dans le fichier ;)
post : stocker le contenu du textarea dans le fichier contenu1
mais je n'arrive pas à trouver de solution pour que le contenu du textarea ne s'efface pas quand je valide :/
0
SkRo91 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   39
 
ah ok
Mais je connaissais la méthode POST mais ce que je voulais dire c'est que je voyais pas pourquoi l'utiliser ici enfaite
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
pour conserver le contenu au réaffichage de la page:

<textarea name ="proj1" id="proj1" rows="20" cols="30" autofocus/><?php if (isset($_POST['proj1'])) { echo $_POST['proj1'];}?></textarea> 
0