3

モーダル ウィンドウを使用してフォームを開く service.php というページがあります。フォームのアクションは service.php でした。

<div class="modal hide fade" id="myServiceModal" tabindex="-1" role="dialog" aria-labelleby="myModalLabel" aria-hidden="true">
   <div class="modal-header">
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
      <h3 id="myModalLabel">Service Failure Form</h3>
   </div>
   <div class="modal-body">
   <p>
     <form class="well-small" action="service.php" method="POST" id="serviceModalForm" name="serviceModalForm">
        <label>Container Selected</label>
        <input type="text" name="containerNumber" id="containerNumber" />
        <label>Bol Selected</label>
        <input type="text" name="bolNumber" id="bolNumber" />
        <input type="submit" id="modal-form-submit" name="submit" class="btn btn-success btn-small" href="#" value="Save" />

<?php

$bol = $_POST['bolNumber'];                     
$container = $_POST['containerNumber'];

if(isset($_POST['submit'])){
     $sql_query_string = 
           "INSERT INTO import_view_svc_fail (bol, container_num) VALUES 
                                             ('$bol', '$container');";
 if(mysql_query($sql_query_string)){
    echo ("<script language='javascript'>
            window.alert('Added New Service Failure')
            </script>");
}
?>
      </form>

このフォームは機能し、適切なテーブルに保存されました。

これが私の問題です。そのフォームを、dispatch.php という別のページに移動する必要がありました。コードをコピーして、dispatch.php に配置しただけです。

フォームのアクションをdispatch.phpに変更しましたが、そこから問題が始まると思います。アクションを service.php に戻すと、何らかの理由で機能します。

service.php からフォームを完全に削除すると、dispatch.php のフォームが機能しなくなります。

私はこれを機能させるためにあらゆることを試みました。service.php からすべてのコードを削除しました。フォルダーからファイル全体を削除しました。

どんな洞察も役に立ちます。

4

2 に答える 2

0

スクリプトに何をするかを指示しますが、それを行うように指示しません。

SLQ クエリを実行するには、使用する必要がありますmysql_query($sql_query_string);

また、データベースに接続する必要があります。詳細については、http://php.net/manual/de/function.mysql-connect.phpをご覧ください。

于 2013-11-04T17:30:59.970 に答える
0

だから..でアクションを変更しますservice.php

<form class="well-small" action="dispatch.php" method="POST" id="serviceModalForm" name="serviceModalForm">

へ引っ越すdispatch.php

<?php

if(isset($_POST['submit'])) 
{
     $bol = (isset($_POST['bolNumber'])) ? $_POST['bolNumber'] : ''; 

     $container = (isset($_POST['containerNumber'])) ? $_POST['containerNumber'] : '';         

     if (!empty($bol) && !empty($container))
     {
         $sql_query_string = 
               "INSERT INTO import_view_svc_fail (bol, container_num) VALUES 
                                                ('$bol', '$container');";
         // run the query here

         print "<br/><br/>".$sql_query_string."<br/><br/>";
     }
     else { print "<br/><br/>empty values;<br/>"; } 
}
else { print "<br/><br/>\$_POST info not received;<br/>"; }  

?>

プリント (送信後):

INSERT INTO import_view_svc_fail (bol, container_num) VALUES ('input one value', 'input two value');

if(isset($_POST['submit']))おそらく、ステートメント内のすべての投稿値もチェックして確認する必要があります。または、ロジック全体を作り直します...空白の値も許可するかどうかによって異なります。

また、 SQL インジェクションmysqli_と、またはの使用法を学ぶ必要がある理由についてもお読みpdoください。

于 2013-11-04T17:33:19.933 に答える