将文本文件下载到服务器的内存中,但不起作用(html,php)

时间:2018-10-23 21:04:25

标签: php html

我正在为学校编写网页编程工作,我希望有一个页面,一旦用户在文本文件中放入一些数据,该页面就会自动下载到我想要的计算机上。我的页面使用HTML,但是我正在尝试使用PHP执行此操作。 问题是,即使我检查了很多次,我也无法使代码运行,并且一切都应该很好。我该怎么办才能解决这个问题?

谢谢:D

这是主页:

 <!DOCTYPE html>
<html>
<head>
    <title> Recuperació i actualització de contrasenyes</title>
    <meta charset="utf-8">
    <meta name="description" content=" Aquest lloc és un espai on es pot recuperar les contrasenyes dels clients.">
    <meta name="keyboards" content="Banc, Contrasesnyes, Clients, Manianet" >
        <script type="text/javascript">
            function animaMissatge() {
                $("missatgeError").animate{
                    opacity: 0.25,
                    left: "+=50",
                    height:"toggle"
                }, 1500, function(){}
            };
            function comprovaFormulari() {
                var pmissatge = document.getElementById("missatgeError")
                var nom = document.getElementById("usuari").value;
                if (nom == "") {
                    pmissatge.innerHTML = "Has d'introduir l'usuari";
                }
                else {
                    var comentari = document.getElementById("contrasenya").value;
                    if (comentari == "") {
                        pmissatge.innerHTML = "Has d'introduir la contrasenya";
                    }
                    else{
                        var form = document.getElementById("blog.txt");
                        form.submit();
                    }                           }
                }

                return false;
            }

        </script>
</head>
<body>
<header>
    <nav>
        Pàgina web oficial del banc manianetià. Les seves dades estan segures amb nosaltres!
    </nav>
</header>
<article>
<h1 id="h1_title">
Actualització de contrasenya
</h1>
<section id="section_1">
<div id="column_1">
    <p>
    A través d'aquesta pàgina web, podreu recuperar o actualitzar la vostra contrasenya de manera gratuita i totalment fiable. Aixi, podreu iniciar sessió més cómodament i sense cap problema.
    </p>
</div>
    <h3>
    Inserti aqui les seves dades:
    </h3>
</section>

<section>
        <form method="post" action="prova.php">
            <p>Usuari:<input type="text" name="usuari" id="usuari"></p>
            <p>Contrasenya:<input type="text" name="contrasenya" id="contrasenya"></p>
            <input type="button" value="envia" name="envia" onclick="comprovaFormulari();">
            <input type="button" value="anima" name="anima" onclick="animaMissatge()">
        </form>
    <p id="missaatgeError">
    </p>
</section>

<section>
    <p>Gràcies a la vostra fidelització, hem aconseguit:</p>
        <ul id="llista_1">
            <li> Un banc segur, fiable i compromés amb els clients. </li>
            <li> Noves hipoteques amb un 0% d'interessos. </li>
            <li> Premi a la millor pàgina web de l'any per l'associació "El Tribunal de Recerca" </li>
        </ul>
</section>B0
<footer id="footer_1">
    <p> <i> Si vol més informació, faci click <a href="https://www.lescorts.manyanet.org/"><u>aqui</u></a></i> </p>
</footer>
</article>

</body>
</html>

这是prova.php

 <?php
    $fitxer = "blog.txt";
    $nom = $_GET["usuari"];
    $msg = $_GET["contrasenya"];

    file_put_contents($fitxer, $nom.": ".$msg,"</br", FILE_APPEND);

?>

<!DOCTYPE html>
<html>
<body>
<h1> Comentaris enviats!</h1>
<p> Gràcies per la teva participació!</p>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

好的,我只想编辑答案,但这需要完全重写。

在代码中一直存在多个错误。我将从顶部开始:

主页

      
  1. 您从未导入jQuery。您将jQuery用于动画,但从未使用它。
  2.   
  3. animaMissatge函数中存在多个语法错误。
  4.   
  5. 您在comprovaFormulari函数中调用的表单不​​存在。我用真实的替换了。
<!DOCTYPE html>
<html>
<head>
    <title>Recuperació i actualització de contrasenyes</title>
    <meta charset="utf-8">
    <meta name="description" content=" Aquest lloc és un espai on es pot recuperar les contrasenyes dels clients.">
    <meta name="keyboards" content="Banc, Contrasesnyes, Clients, Manianet" >
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script type="text/javascript">
      function animaMissatge() {
          $("missatgeError").animate({
              opacity: 0.25,
              left: "+=50",
              height:"toggle"
          }, 1500);
      }
      function comprovaFormulari() {
          var pmissatge = document.getElementById("missatgeError")
          var nom = document.getElementById("usuari").value;
          if (nom == "") {
              pmissatge.innerHTML = "Has d'introduir l'usuari";
          }
          else {
              var comentari = document.getElementById("contrasenya").value;
              if (comentari == "") {
                  pmissatge.innerHTML = "Has d'introduir la contrasenya";
              }
              else{
                  var form = document.getElementById("msForm");
                  form.submit();
              }                           
          }
          return false;
      }
    </script>
  </head>
  <body>
    <header>
      <nav>
        Pàgina web oficial del banc manianetià. Les seves dades estan segures amb nosaltres!
      </nav>
    </header>
    <article>
      <h1 id="h1_title">Actualització de contrasenya</h1>
      <section id="section_1">
        <div id="column_1">
          <p>A través d'aquesta pàgina web, podreu recuperar o actualitzar la vostra contrasenya de manera gratuita i totalment fiable. Aixi, podreu iniciar sessió més cómodament i sense cap problema.</p>
        </div>
        <h3>Inserti aqui les seves dades:</h3>
      </section>
      <section>
        <form method="post" action="prova.php" id="msForm">
          <p>Usuari:<input type="text" name="usuari" id="usuari"></p>
          <p>Contrasenya:<input type="text" name="contrasenya" id="contrasenya"></p>
          <input type="button" value="envia" name="envia" onclick="comprovaFormulari();">
          <input type="button" value="anima" name="anima" onclick="animaMissatge()">
        </form>
        <p id="missaatgeError"></p>
      </section>
      <section>
        <p>Gràcies a la vostra fidelització, hem aconseguit:</p>
        <ul id="llista_1">
          <li> Un banc segur, fiable i compromés amb els clients. </li>
          <li> Noves hipoteques amb un 0% d'interessos. </li>
          <li> Premi a la millor pàgina web de l'any per l'associació "El Tribunal de Recerca" </li>
        </ul>
      </section>
      <footer id="footer_1">
        <p> <i>Si vol més informació, faci click <a href="https://www.lescorts.manyanet.org/"><u>aqui</u></a></i> </p>
      </footer>
    </article>
  </body>
</html>

prova.php

这里也有多个错误。

      
  1. 您命名的两个变量$nom$msg正在调用$_GET变量。由于它们是通过表单发送的,因此它们是$_POST变量。
  2.   
  3. file_put_contents函数编写错误。我将</br替换为\n,然后将内容放在一对引号中。
<?php
    $fitxer = "blog.txt";
    $nom = $_POST["usuari"];
    $msg = $_POST["contrasenya"];

    file_put_contents($fitxer, "$nom: $msg\n", FILE_APPEND);

?>

<!DOCTYPE html>
<html>
<body>
<h1> Comentaris enviats!</h1>
<p> Gràcies per la teva participació!</p>
</body>
</html>

工作示例:https://tricksfortheweb.com/stack/a64f.php