在PHP中,如何使用id來取得元素?
P粉930448030
P粉930448030 2023-08-23 00:09:38
0
2
605
<p>我想在我的網站上新增一個郵件發送系統。 </p> <p>問題是當我嘗試從我的HTML檔案中分配一個變數文字時,它沒有發生。我希望變數中的內容應該寫在電子郵件的訊息中。這是我的程式碼:</p> <pre class="brush:php;toolbar:false;"><html> <?php include('form.php'); ?> <head> </head> <body> <form action="./form.php" method="post"> <div name="name"><input type="text" id="name"></div> <div name="surname"><input type="text" id="surname"></div> <div name="message"><textarea rows="4" cols="50" id="message">Inserisci qui il tuo testo.</textarea></div> <div name="subject"><select id="subject"> <option selected="selected">--Inserisci Oggetto--</option> <option>Registrazione al sito</option> <option>Recupero credenziali</option> </select></div> <input type="submit" value="Invia penzolini"/> <input type="hidden" name="button_pressed" value="1" /> </form> </body> </html> <?php $dochtml = new domDocument(); $dochtml->loadHTML('index.html'); if(isset($_POST['button_pressed'])) { //取得名字 $name = $dochtml->getElementById('name'); //取得姓氏 $surname = $dochtml->getElementById('surname'); //取得郵件主題 $subject = $dochtml->getElementById('subject'); //訊息<70個字符 $msg = "Inviato da" . ' ' . $name . $surname . ' ' . $dochtml->getElementById('message'); // /n=空格 // 傳送郵件 mail("panzersit@gmail.com",$subject,$msg); echo 'Email inviata.'; } ?></pre> <p><br /></p>
P粉930448030
P粉930448030

全部回覆(2)
P粉863295057

PHP無法直接存取您的DOM。 PHP僅在伺服器上運行,並簡單地接收請求並給予回應。

在將此表單提交到其操作頁面./form.php後,輸入表單的值將儲存在$_POST中,鍵名為其name 屬性。在您的HTML程式碼中,像這樣為輸入標籤新增name屬性:

<form action="./form.php" method="post">
    <div name="name"><input type="text" name="name"></div>
    <div name="surname"><input type="text" name="surname"></div>
</form>

現在,如果我提交此表單並在name輸入標籤中輸入Zachary,surname輸入標籤中輸入Taylor,我可以這樣取得這些值:

./form.php檔案中:

$name = $_POST['name']; // "Zachary"

$surname = $_POST['surname']; // "Taylor"

要驗證首先是否有任何輸入,請使用:isset($_POST['key']),因為有時輸入值為空值時甚至不會發送到操作頁面。這可以防止PHP在引用不存在的$_POST鍵時拋出錯誤。

P粉163951336

要從提交的表單中取得已發佈的數據,您可以使用$_POST['fieldname']來實作。

只需嘗試以下操作,並在表單提交後查看您獲得的內容。

//echo "<pre>";
//print_r($_POST);

取消上述兩行的註釋,查看您獲得的內容,然後再次將其註釋。

if( isset($_POST['name']) )
{
    $name = $_POST['name'];
}
if( isset($_POST['surname']) )
{
    $surname = $_POST['surname'];
}
if( isset($_POST['subject']) )
{
    $subject = $_POST['subject'];
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板