Seite 1 von 1

Bestimmte Zeichen werden Falsch in Textdatei geschrieben

Verfasst: 13.02.2006 12:35
von malefiz
Hallo zusammmen,

ich hab für eine Website ein kleines CMS gebastelt, wo ein Newsbereich geplfegt werden kann. Hab zum veranschaulichen eine Testdatei auf meinen Server geladen.

So wenn nun ein Text in einen der Textfelder eingegeben wird, wird dieser beim Absenden in eine Textdatei gespeichert und erneut im Textfeld angezeigt. Klappt soweit auch wunderbar. Das Problem is nun wenn ich etwas in Anführungzeichen eingeben will erscheinen vor den Anführungszeichen Backslashes
"Test" eingegeben --> \"Test\" wird gespeichert. Das selbe gilt dafür:
\Test\ eingegeben --> \\Test\\ wird gespeichert.

Bei allen anderen Zeichen geht es reibungslos.

Hier der Qellcode:

Code: Alles auswählen

<?php
		if (isset($_POST['submit1'])){								
			$fp = fopen("../../admin/home/test/header1.txt", "w");
			$fp1 = fopen("../../admin/home/test/inhalt1.txt", "w");
			$n1 = chr(13) . chr(10);
			if ($fp && $fp1){
				fputs($fp, $_POST['ueberschrift1']);
				fputs($fp1, $_POST['inhalt1']);
				fclose($fp);
			} 
			  
		} 

		if (isset($_POST['submit2'])){
			$fp2 = fopen("../../admin/home/test/header2.txt", "w");
			$fp3 = fopen("../../admin/home/test/inhalt2.txt", "w");
			$fp4 = fopen("../../admin/home/test/header3.txt", "w");
			$fp5 = fopen("../../admin/home/test/inhalt3.txt", "w");
			$fp6 = fopen("../../admin/home/test/header4.txt", "w");
			$fp7 = fopen("../../admin/home/test/inhalt4.txt", "w");
			$n1 = chr(13) . chr(10);
			if ($fp2 && $fp3 && $fp4 && $fp5 && $fp6 && $fp7){
				fputs($fp2, $_POST['ueberschrift2']);
				fputs($fp3, $_POST['inhalt2']);
				fputs($fp4, $_POST['ueberschrift3']);
				fputs($fp5, $_POST['inhalt3']);
				fputs($fp6, $_POST['ueberschrift4']);
				fputs($fp7, $_POST['inhalt4']);
				
				fclose($fp2);
			} 
			  
		} 
    ?>
    <td>&nbsp;</td>
  </tr>
  <tr> 
    <td height="22" class="ueberschrift">News</td>
    <td height="22" class="oben">&nbsp;</td>
    <td rowspan="2">&nbsp;</td>
  </tr>
  <tr> 
    <td height="114" align="left" valign="top" >
		<form name="news" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
	        <input name="ueberschrift1" type="text" size="40" class="ueberschrift"  value="<?php include("../../admin/home/test/header1.txt");?>" ><br>
	        
			<textarea name="inhalt1" cols="70" rows="15" class="text" ><?php include("../../admin/home/test/inhalt1.txt") ?></textarea>
			<input name="submit1" type="submit" value="speichern">
      </form></td>
    <td align="right" valign="top" >
	<form name="newsbox" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
		<input name="ueberschrift2" type="text" size="40" class="ueberschrift" value="<?php include("../../admin/home/test/header2.txt");?>"><br>
		<textarea name="inhalt2" cols="46" rows="5" class="text" ><?php include("../../admin/home/test/inhalt2.txt") ?></textarea>
		
		<input name="ueberschrift3" type="text" size="40" class="ueberschrift" value="<?php include("../../admin/home/test/header3.txt");?>"><br>
		<textarea name="inhalt3" cols="46" rows="5" class="text" ><?php include("../../admin/home/test/inhalt3.txt") ?></textarea>
		
		<input name="ueberschrift4" type="text" size="40" class="ueberschrift" value="<?php include("../../admin/home/test/header4.txt");?>"><br>
		<textarea name="inhalt4" cols="46" rows="5" class="text" ><?php include("../../admin/home/test/inhalt4.txt") ?></textarea><br>
		
		<input name="submit2" type="submit" value="speichern">
	</form>
	</td>
  </tr>
</table>

Verfasst: 14.02.2006 07:49
von easygo
Hi! Versuchs mal mit stripslashes() für die Ausgabe. easy