[php]class de livre d'or

krabs Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
krabs Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'essaye de faire une classe php qui écrit et gere 5 fichier texte.
Seulement elle ne semble pas marcher ;-) j'ai une petite idée qui ne me semble cependant pas etre le probleme: un return dans un for qui interrompt toute la fonction ??Si quelqun voit quelque chose merci bcp.

Voici le code
<?php
class txt{
     function see(){
	     //fichier texte
	     $txt[0] = "txt1.txt";
         $txt[1] = "txt2.txt";
         $txt[2] = "txt3.txt";
         $txt[3] = "txt4.txt";
         $txt[4] = "txt5.txt";
         
		 //le premier vide
		 for($i=0;$i<5;$i++){
	         $open[$i] = fopen($txt[$i], 'a');
		     $length[$i] = strlen($open[$i]);
			 fclose($open[$i]);
		     if($length[$i] == 0){
		         return $i;
		     }
			 if($i == 4 && $length[$i]!=0){
			     $i = false;
			     return $i;
			 }
		 }
		 
		 //nom et message
		 $name = htmlentities($_GET["name"]);
         $msg = htmlentities($_GET["msg"]);
		 
		 if(!isset($name,$msg) && strlen($name)<100 && strlen($msg)<600){
		     break;
		 }
		 
		 //date et heure en francais
		 $mois[1] = "janvier";
		 $mois[2] = "fevrier";
		 $mois[3] = "mars";
		 $mois[4] = "avril";
		 $mois[5] = "mai";
		 $mois[6] = "juin";
		 $mois[7] = "juillet";
		 $mois[8] = "août";
		 $mois[9] = "septembre";
		 $mois[10] = "octobre";
		 $mois[11] = "novembre";
		 $mois[12] = "décembre";
		 
		 $jour[1] = "lundi";
		 $jour[2] = "mardi";
		 $jour[3] = "mercredi";
		 $jour[4] = "jeudi";
		 $jour[5] = "vendredi";
		 $jour[6] = "samedi";
		 $jour[7] = "dimanche";
		 
		 $date = getDate();
		 
		 $semaine = $date[wday];
		 $annee = $date[year];
		 $moi = $date[mon];
		 $journee = $date[mday];
		 $heure = $date[hours];
		 $minute = $date[mintes];
		 $secs = $date[seconds]; 
         
         $ajout = "$jour[$semaine] $journee $mois[$moi] $annee à $heure h $minute min $secs sec";	 
		 //texte rajouté dans le fichier
		 $pre = "Rajouté par $name le $ajout par $name";
		 
		 //si un fichier et vide:
		 if(isset($i) && $i<5){
		     $op = fopen($txt[$i], 'a');
			 $incl = "<div class='com'><div class='header'>$ajout</div><div class='msg'>$msg</div></div>";
			 fwrite($op, $incl);
             fclose($op);
		 }
		 echo htmlentities($_GET["name"]).htmlentities($_GET["msg"]);
		 //si aucun fichier est vide
		 //if($i == false){
		     
		 //}
	 }
}
$obj = new txt();
$obj -> see();

include("txt1.txt");
echo"<br>";
include("txt2.txt");
echo"<br>";
include("txt3.txt");
echo"<br>";
include("txt4.txt");
echo"<br>";
include("txt5.txt");
?>
A voir également:

3 réponses

s.spark Messages postés 2485 Date d'inscription   Statut Contributeur Dernière intervention   618
 
Salut,

Peut-on avoir le formulaire ?
0
krabs Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   20
 
Bonjour
bien sur:
la page load.php:
<?php
class txt{
     function see(){
	     //fichier texte
	     $txt[0] = "txt1.txt";
         $txt[1] = "txt2.txt";
         $txt[2] = "txt3.txt";
         $txt[3] = "txt4.txt";
         $txt[4] = "txt5.txt";
         
		 //le premier vide
		 for($i=1;$i<6;$i++){
	         $open[$i] = fopen($txt[$i], 'a');
		     $length[$i] = strlen($open[$i]);
			 fclose($open[$i]);
		     if($length[$i] == 0){
		         return $i;
		     }
			 if($i == 4 && $length[$i]!=0){
			     $i = false;
			     return $i;
			 }
		 }
		 
		 //nom et message
		 $name = htmlentities($_GET["name"]);
         $msg = htmlentities($_GET["msg"]);
		 
		 if(!isset($name,$msg) && strlen($name)<100 && strlen($msg)<600){
		     break;
		 }
		 
		 //date et heure en francais
		 $mois[1] = "janvier";
		 $mois[2] = "fevrier";
		 $mois[3] = "mars";
		 $mois[4] = "avril";
		 $mois[5] = "mai";
		 $mois[6] = "juin";
		 $mois[7] = "juillet";
		 $mois[8] = "août";
		 $mois[9] = "septembre";
		 $mois[10] = "octobre";
		 $mois[11] = "novembre";
		 $mois[12] = "décembre";
		 
		 $jour[1] = "lundi";
		 $jour[2] = "mardi";
		 $jour[3] = "mercredi";
		 $jour[4] = "jeudi";
		 $jour[5] = "vendredi";
		 $jour[6] = "samedi";
		 $jour[7] = "dimanche";
		 
		 $date = getDate();
		 
		 $semaine = $date[wday];
		 $annee = $date[year];
		 $moi = $date[mon];
		 $journee = $date[mday];
		 $heure = $date[hours];
		 $minute = $date[mintes];
		 $secs = $date[seconds]; 
         
         $ajout = "$jour[$semaine] $journee $mois[$moi] $annee à $heure h $minute min $secs sec";	 
		 //texte rajouté dans le fichier
		 $pre = "Rajouté par $name le $ajout par $name";
		 
		 //si un fichier et vide:
		 if(isset($i) && $i<5){
		     $op = fopen($txt[$i], 'a');
			 $incl = "<div class='com'><div class='header'>$ajout
			 </div><div class='msg'>$msg</div></div>";
			 fwrite($op, $incl);
             fclose($op);
		 }
		 //si aucun fichier est vide
		/*if($i == false){
		     
             for($a = 0; $a < 3; $a++){
			     $b = a++;
				 if($b == 1){
				     $tx = $op = fopen($txt[1], 'a');
					 
				 }
				 if($b<2&&$b4){
				     rename($ouvrir[$a], "txt$b.txt");
				 }
		     }
		 }
		 */
	 }
}
$obj = new txt();
$obj -> see();
?>



0
krabs Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   20
 
la page tst.html
<html>
     <head>
	     <title>Tchat</title>
         <link rel="stylesheet" type="text/css" href="style.css"/>
         <script type="text/javascript" src="script.js"></script>
     </head>
     <body>
	     <div id="target"></div>
	     <a href="#" onclick="open_file(),focus_name()">Ajouté votre commentaire</a>
         <div id="ad" style="display:none;"><br>
		     <table border="0">
			 <tr><td>Nom&nbsp;&nbsp;</td></tr>
			 <tr><td><input type="text" name="name" id="name"></input></td></tr>
             <tr><td>Message&nbsp;&nbsp;</td></tr>
			 <tr><td><textarea name="msg" id="msg"></textarea></td></tr>
             <tr><td><input type="button" value="envoyer" id="submit" onclick="send_msg()"></input></td></tr>
			 </table>
         </div>
     </body>
</html>

et le script ajax/js
function focus_name(){
     document.getElementById("name").focus();
}

function open_file(){
     var div = document.getElementById("ad");
     if(div.style.display == "none"){
	     div.style.display = "block";
	 }
	 else{
	     div.style.display = "none";
	 }
} 

function send_msg(){
var load;
try {
load = new ActiveXObject("Msxml2.XMLHTTP");
} 
     catch (e) {
         try {
         load = new ActiveXObject("Microsoft.XMLHTTP");
	     } 
	         catch (e) {
	         load = false;
	         }
     }
	 
if (!load && typeof XMLHttpRequest != 'undefined'){
     load = new XMLHttpRequest();
}
var name = document.getElementById("name").value;
var msg = document.getElementById("msg").value;
var url = "load.php?name="+name+"&&msg="+msg;
alert(url);
load.open("GET", url);
load.onreadystatechange = function(){
     if (load.readyState == 4 && load.status == 200) {
          document.getElementById("target").innerHTML = load.responseText;
     }
}
load.send(null);
}

Si cela peut aider
Merci bcp
0