> 백엔드 개발 > PHP 튜토리얼 > PHP 写文件写不进去,该如何解决

PHP 写文件写不进去,该如何解决

WBOY
풀어 주다: 2016-06-13 13:36:36
원래의
853명이 탐색했습니다.

PHP 写文件写不进去


字符串输入框:

    function dochange2(){
$open =fopen("d:\111.txt","a");
  $content=$_POST['mes'];
fwrite($open,$content);
fclose($open);
}
  ?>


代码如上,我想把文本框mes的内容写到111.txt里面去,但是发现这样写不进去,求原因。。。

------解决方案--------------------
js onClick="dochange2()" 跟你的函数没关系……


在form表单指定action,在相应的页面调用php的dochange2函数
------解决方案--------------------


dochange2 这是个js事件,,仅在客户端,浏览器执行,,不会直接调用服务器端的php函数dochange2


这是个表单


……
……



那么在abc.php里,下面的代码,正常情况会将表单的数据写到D:\111.txt,前提是具备权限的
dochange2();

function dochange2(){
$open =fopen("d:\111.txt","a");
$content=$_POST['mes'];
fwrite($open,$content);
fclose($open);
}

------解决方案--------------------
http://www.w3school.com.cn/php/php_forms.asp
你的 onClick="dochange2()" 调用的是JS的函数,而JS的dochange2()函数中,却是PHP的代码。
Javascript是浏览器上的语言,PHP是服务器上的语言。不能混淆在一起

应该是用浏览器的HTML
表单提交数据到服务器,然后php再来接收处理,比如写入本地文件当中
------解决方案--------------------
你的html代码在php代码之后运行,所以在浏览器中你看不到由php定义的dochange2()函数,浏览器会提示你
dochange2()未定义。
你可以在后台处理:
HTML code

 <?php if (!empty ($_POST)) {
    $open = fopen("d:\\111.txt", "ab");
    $content = $_POST['mes'];
    fwrite($open, $content);
    fclose($open);
}
?>
<td>
  <form action="xxx.php" method="post">
      字符串输入框:<input type="text" name="mes" value="" width="50px">
    <input type="submit" name="submit" value="发送" width="50px">
  </form>
</td> <div class="clear">
                 
              
              
        
            </div>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿