Dalam PHP, bagaimana untuk mendapatkan elemen menggunakan id?
P粉930448030
2023-08-23 00:09:38
<p>Saya ingin menambah sistem penghantaran e-mel ke tapak web saya. </p>
<p>Masalahnya ialah apabila saya cuba menetapkan teks pembolehubah daripada fail HTML saya, ia tidak berlaku. Saya mahu kandungan dalam pembolehubah harus ditulis dalam mesej e-mel. Ini kod saya: </p>
<pre class="brush:php;toolbar:false;"><html>
<?php include('form.php');
<kepala>
</head>
<badan>
<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="subjek"><pilih id="subjek">
<option selected="selected">--Inserisci Oggetto--</option>
<option>Pendaftaran di tempat</option>
<option>Recupero credenziali</option>
</select></div>
<input type="submit" value="Invia penzolini"/>
<input type="hidden" name="button_pressed" value="1" />
</form>
</badan>
</html>
<?php
$dochtml = new domDocument();
$dochtml->loadHTML('index.html');
if(isset($_POST['butang_tekan']))
{
//Dapatkan nama
$name = $dochtml->getElementById('nama');
//Dapatkan nama keluarga
$nama keluarga = $dochtml->getElementById('nama keluarga');
//Dapatkan subjek e-mel
$subjek = $dochtml->getElementById('subjek');
//Mesej <70 aksara
$msg = "Inviato da" ' ' . $nama keluarga
// menghantar e-mel
mail("panzersit@gmail.com",$subjek,$msg);
echo 'E-mel inviata.';
}
?></pra>
<p><br /></p>
PHP tidak boleh mengakses DOM anda secara langsung. PHP hanya berjalan pada pelayan dan hanya menerima permintaan dan memberikan respons.
Serahkan borang ini ke halaman tindakannya
./form.php
后,输入表单的值将存储在$_POST
中,键名为其name
属性。在您的HTML代码中,像这样为输入标签添加name
Atribut:Sekarang, jika saya menyerahkan borang ini dan memasukkan Taylor dalam
name
输入标签中输入Zachary,surname
teg input, saya boleh mendapatkan nilai seperti ini:Dalam
./form.php
fail:$nama = $_POST['nama']; // "Zachary"
$nama keluarga = $_POST['nama keluarga']; // "Taylor"
Untuk mengesahkan bahawa terdapat sebarang input terlebih dahulu, gunakan:
, kerana kadangkala nilai input tidak dihantar ke halaman tindakan apabila ia adalah batal. Ini menghalang PHP daripada membuang ralat apabila merujuk kunci $_POST yang tidak wujud. 🎜isset($_POST['key'])
isset($_POST['key'])Untuk mendapatkan data yang disiarkan daripada borang yang diserahkan, anda boleh menggunakan
$_POST['fieldname']
untuk mencapai ini.Cuba yang berikut dan lihat apa yang anda dapat selepas penyerahan borang.
Nyahkomen dua baris di atas, lihat apa yang anda dapat, dan kemudian ulasnya sekali lagi.