我有一個PHP
腳本,當用戶提交一個更改密碼錶格時執行。它運行良好,並且在使用fgets()
和fgetc()
方法(這需要大量代碼)時,我已成功寫入文件。但我從來不想這樣做。我希望能夠從我的pass.php
文件中調用$_SESSION["password"]
,並使用fwrite()
方法將其替換爲$newpass
。目前的代碼根本不能替代。我的PHP
腳本。試圖用fwrite()寫一個包含PHP的文件的新密碼
<?php
$oldpass = $_SESSION["password"] ;
$newpass = $_POST["newpass"] ;
$session = fopen("pass.php" , "r+") or die("Could not open file") ;
$session ;
$content = file_get_contents($session) ;
$content = str_replace($oldpass , $newpass , $content) ;
fwrite($session , $content) ;
fclose($session) ;
?>
我的外部PHP
文件pass.php
。
<?php
session_start() ;
$_SESSION["username"] = "imauser" ;
$_SESSION["password"] = "imapass" ;
?>
這是爲什麼尖叫危險? – 2014-09-06 16:02:22
@Fred -ii-沒有任何人在文件中使用有害數據。該文件只包含提到的代碼。另外我有一大堆驗證腳本來清理提交的表單。 – Xavier 2014-09-06 16:04:23
我認爲有一些基本的東西我錯過了將文件調入字符串或者可能有更好的方法,然後使用'str_replace()'方法。 – Xavier 2014-09-06 16:14:39