Insérer une valeur de popup dans un fichier texte

Fermé
inesnaffeti Messages postés 9 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 10 avril 2015 - Modifié par jordane45 le 25/03/2015 à 15:06
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 25 mars 2015 à 17:57
bonjour,
j'ai un popup qui contient un champ text et un boutton submit A l'insertion d'un text dans le popup je veut récupérer cette valeur puis l'insérer dans un fichier text.
comment je peut le faire??


voila mon code:
<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
 <title>Pop up</title>
    <link rel="stylesheet" href="formoid-solid-blue.css" type="text/css" />
</head>

<body class="blurBg-false" style="background-color:#EBEBEB">
<!-- Start Formoid form-->
<!-- here-->
<form name="formPopUp" method="post" action="AnalyseTitlePack1.php" class="formoid-solid-blue" style="background-color:#FFFFFF;font-size:14px;font-family:'Roboto',Arial,Helvetica,sans-serif;color:#34495E;max-width:600px;min-width:150px">
<div class="title">
  <h2>Pop up</h2>
</div>
 
 <div class="element-textarea">
     <label class="title"></label>
        <div class="item-cont">
        <textarea class="medium" name="tit" placeholder="Entrer votre Nouveau titre">  </textarea>
        <span class="icon-place"></span>
        </div>
    </div>
    
<div class="submit">
 <input type="submit" value="Submit" name="bn" onClick="test()"/>
</div>
</form>
<!-- Stop Formoid form-->
<!-- here-->
</body>
</html>



EDIT : Ajout des balises de code
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
A voir également:

3 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 mars 2015 à 15:11
Bonjour,

Il te faut donc écrire le code de ton fichier AnalyseTitlePack1.php

Tu peux déjà commencer par regarder ce que contient ta variable $_POST ..
et Pour écrire dans un fichier, tu peux regarder ceci :
https://www.php.net/manual/fr/function.file-put-contents.php


<?php
//AnalyseTitlePack1.php

if(isset($_POST)){
   //-------------------------------------//
   //le temps des tests.. affichage du contenu
   // de $_POST
   //-------------------------------------//
      print_r($_POST);


   //-------------------------------------//
   // (écriture dans un fichier texte)
   //-------------------------------------//
      $file = 'TonFichier.txt';
      // Ouvre un fichier pour lire un contenu existant
      $current = file_get_contents($file);
      // Ajoute les nouvelles données
      $current .= $_POST['tit']."\n";
      // Écrit le résultat dans le fichier
      file_put_contents($file, $current);
}

?>





0
inesnaffeti Messages postés 9 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 10 avril 2015
Modifié par jordane45 le 25/03/2015 à 16:23
voila mon fichier AnalyseTitle :
<html>
<head>
</head>
<body>
<script language="php"> // ça fonctionne encore
include("MonCodeSource.php");
$fp=fopen("a.txt","r+");
//Tester la position du titre
$findTitle="<title>";
$findEndTitle="</title>";
$i=0;
$fin=0;
while (!feof($fp)) {
$cont=fgets($fp,1024);
$i++; 
$fin++;
if (strstr($cont,$findTitle)) 
    {echo ("la position du titre est ".$i);}
 if (strstr($cont,$findEndTitle)) 
    {echo ("la position du fin de  titre est ".$fin);}
 }
 $texte = file_get_contents("a.txt"); 

//Tester le nombre de caractére du titre
$marqueurDebutTitre = '<title>'; 
$debutTitre = strpos( $texte, $marqueurDebutTitre ) + strlen( $marqueurDebutTitre ); 
$marqueurFinTitre = '</title>'; 
$finTitre = strpos( $texte, $marqueurFinTitre ); 
$leTitre = substr( $texte, $debutTitre, $finTitre - $debutTitre ); 
 echo(" Le titre de la pages web " .$_POST['TxtLien']." est : ".$leTitre."<br>"."<br>");
 echo(" le nombre de caractere du titre est ".strlen($leTitre) ."<br>"."<br>");
 echo ("le nombre de mot  est ".str_word_count($leTitre)."<br>");
 $lng=strlen($leTitre);
 
 if ($lng<150)
 { 
</script>
<script type="text/javascript">
                        function open_popUp()
                        {
 window.open('Formoid.php','nom_de_ma_popup','menubar=no, scrollbars=no, top=100, left=100, width=600, height=400');
                        }
      document.bn.submit(); 
             </script>  
                
<form name="formPopUp" method="post" action="Formoid.php">
 <a href=""> Ameliorez votre site</a>
 </form>
 
 <script language="php">
 function test()
 {
fclose($fp);
//ouverture en lecture et modification
$t=fopen("a.txt",'r');
$co=file_get_contents("a.txt");
$contenuMod=str_replace($leTitre,$_POST['tit'], $co);
fclose($t);
//ouverture en écriture
$t2=fopen("a.txt",'w+');
fwrite($t2,$contenuMod);
fclose($t2);
}
 }
 </script>
</body>
</html>

Merci.


EDIT : Ajout du langage dans les balises de code
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 mars 2015 à 16:26
Oui .. et ??
Que veux tu qu'on en fasse ?
Tu as regardé ma réponse précédente ?
- Qu'as tu essayé de faire ?
- Sur quoi bloques tu exactement ?
- Quel est le comportement observé et en quoi n'est il pas bon ?

Nous balancer du code sans aucune autre explication ne nous permettra pas de t'aider convenablement..
merci de faire un effort sur la rédaction de tes questions.
0
inesnaffeti Messages postés 9 Date d'inscription jeudi 19 mars 2015 Statut Membre Dernière intervention 10 avril 2015
25 mars 2015 à 16:33
la variable $Letitre dans mon dernier fichier est le titre de ma page html.
exemple : le titre de la page html est document1.
Lors de l'appel du popUp j'insére dedans un neauveau text et ce text sera mis en place du titre précedent.
exemple : si je mais mon nouveau titre "page web analyse" alors ce titre sera transmis au fichier text.
Dans mon dernier fichier envoyé à la ligne 57 :
 $contenuMod=str_replace($leTitre,$_POST['tit'], $co); 


si je remplace ,$_POST['tit'] pas un autre text alors l'ancien titre sera remplacer:

 $contenuMod=str_replace($leTitre,"page web analyse", $co); 

j'espére que tu m'a compris.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 mars 2015 à 17:57
Pas vraiment ...
mais bon....

Donc ton souci se situerait ici ? :
//ouverture en lecture et modification
$t=fopen("a.txt",'r');
$co=file_get_contents("a.txt");
$contenuMod=str_replace($leTitre,$_POST['tit'], $co);
fclose($t);
//ouverture en écriture
$t2=fopen("a.txt",'w+');
fwrite($t2,$contenuMod);
fclose($t2);


As tu ...pour vérifier... fais un ECHO de tes variables pour savoir ce qu'elles contiennent ??

//ouverture en lecture et modification
$t=fopen("a.txt",'r');
$co=file_get_contents("a.txt");
$contenuMod=str_replace($leTitre,$_POST['tit'], $co);
//-----------------------------------------
// LE TEMPS DES TESTS
//-----------------------------------------
 echo "<br> LeTitre = ".$leTitre;
 echo "<br> _POST['tit']= ".$_POST['tit'];
 echo "<pre><br>  co= ".$co."</pre>";
 echo "<pre><br>  contenuMod= ".$contenuMod."</pre>";

//-----------------------------------------

fclose($t);
//ouverture en écriture
$t2=fopen("a.txt",'w+');
fwrite($t2,$contenuMod);
fclose($t2);





0