2017-09-02 31 views
0

現在我做了2個輸入一個名稱,一個簡單的表單按鈕 我想在PHP文件的回聲名輸入

<form action="del.php">          
<input type="text" name="name" /> 
<input type="submit" name="btn" value="button"/> 
</form> 

在del.php

<?php 
session_start(); 
$_SESSION['name'] = $_POST['name']; 
echo "".$_POST['name'].""; 

給我白屏幕時,每次 我想呼應,在此輸入輸入的任何東西

+0

你爲什麼要使用這樣的'「文本」,「'型豈不是'型=」文本「'只? – Jer

+0

@Jer因爲我原來的代碼有placeholder =「」當我刪除額外的東西是簡單的代碼我沒有看到它對不起 –

+1

,你錯過了方法你的表格 – Skewled

回答

4

您在您的表單中缺少method屬性。

<form action="del.php" method="POST">          
    <input type="text" name="name" /> 
    <input type="submit" name="btn" value="button"/> 
</form> 

方法屬性指定如何發送形狀數據(形狀數據發送到在操作屬性指定的頁面)。

該形狀數據可被髮送作爲URL變量(與方法= 「GET」),或作爲HTTP交易後(用方法= 「POST」)。

來源:https://www.w3schools.com/tags/att_form_method.asp

+0

喔,謝謝 –

+1

@rekobeko當你接受一個正確答案時,這很酷。那意義重大。 :) – Spectarion

1

default method時提交表單GET,你需要在你<form>標籤指定POST方法(方法= 「郵報」):

<form action="del.php" method="post"> 
+0

哎呀謝謝你,我不知道我是如何忘記這一點的:D –

0

你表單不是在發佈它的GET(請參閱將設置爲example.com?name=的url參數),這是因爲您沒有設置POST的from方法:

<form action="del.php" method="post">          
    <input type="text" name="name" /> 
    <input type="submit" name="btn" value="button"/> 
</form> 

而且你的PHP中,你應該檢查其職務,並檢查值設置:

<?php 
session_start(); 

if ($_SERVER['REQUEST_METHOD'] == 'POST') { 

    $name = isset($_POST['name']) ? $_POST['name'] : null; 

    // set your session - not sure you need this :/ 
    $_SESSION['name'] = $name; 

    // echo out your result but also protect from XSS by using htmlentities 
    echo htmlentities($name); 
}