2016-11-17 21 views
0

PHPコードとHTMLフォームを含むPHPファイルに問題があるのだろうかと思います。例えば : ファイルの最初の部分は次のようになります。単一ファイルのPHPとHTMLフォーム

<?php ... 
?> 

<html>...<form action = "current file"> ..... </form> 
</html> 

アクションは、この現在のファイルの名前を参照します。

または、拡張子が.phpのファイルでPHPコードを、拡張子が.htmlのファイルでHTMLコードを区切る必要がありますか?

+1

いいえ、あなたはしません。やってみて。あなたは現在のページに行くことなく、 'action'を必要としません。 – chris85

+1

** PHP **コードは '.html'ファイル拡張子では機能しません。 ** PHP **コードではファイル拡張子を '.php'に変更する必要があります。 –

+0

これを行うことができます。 .htaccessファイルを作成し、 'AddType application/x-httpd-php .html .htm'を挿入します。しかし、私はPHPとしてHTMLファイルを使用することはお勧めしません –

答えて

0

あなた自身でテストしてください。 クライアントがリクエストを送信するたびにPHPがロードされるため、HTMLタグの内部でPHPを使用することもできます。

クライアントからの要求が送信され、.phpファイルが読み込まれます - >サーバーがPHPを読み込み、PHPを実行し、すべてのPHPオブジェクトを返すテキストで置き換えます。クライアントは、サーバを経由して

注意をロードし(、編集)されたファイルを取得する:あなたがHTMLとPHPを組み合わせた場合、HTMLは、もともとPHPタグをサポートしていないため、ファイルは拡張子.PHPを必要とします。

0

以下は、同じファイル内のphpとhtmlフォームの例です。

のindex.php ' "= アクション"' ファイルの拡張子は、あなただけの ' アクション= "現在のファイル"' への変更が必要に

の.phpにする必要が勿論

<?php 
    if(isset($_POST['submit'])) { 
     // The things that needs to be checked and executed WHEN submitted. 

     $email = htmlspecialchars($_POST['Email']); 
     $email = strip_tags($email); 

     $password = htmlspecialchars($_POST['Password']); 
     $password = strip_tags($password); 

     //SQL STUFF 

     if ($email === $row['email'] && $password === $row['password']) { 
      $_SESSION['uuid'] = $row['uuid']; 
      header("Location: profile.php?id=". $row['uuid'] .""); 
     } 
    } 
?> 
<!DOCTYPE html> 
<html> 
<head> 
    <title>My Form</title> 
</head> 
<body> 
    <form action="" method="POST"> 
     <input type="email" name="Email" placeholder="Email..." required> 
     <input type="password" name="Password" placeholder="Password..." required> 
     <input type="submit" name="submit" value="Submit"> 
    </form> 
</body> 
</html> 
関連する問題