如何在PHP中通过邮件发送输入
我有两个问题:如何在PHP中通过邮件发送输入,php,Php,我有两个问题: 他没有把我填在表格里的名字寄出去 他只发送我作为产品投入的最后一件东西和金额 e、 g:如果我输入Naam:TOM,Productnaam:Zwart 26,aantal:4,然后单击toevoegen,它就会出现。然后我输入Naam:TOM,Productnaam:Zwart 11,aantal:5,然后再次单击toevoegen,它显示在另一个顺序下面。然后,当我发送邮件时,一切都很顺利,但当我看到我的邮件时,我得到的是: Naam:5 x Zwart 11 对这些问题有什么
Naam:TOM,Productnaam:Zwart 26,aantal:4
,然后单击toevoegen
,它就会出现。然后我输入Naam:TOM,Productnaam:Zwart 11,aantal:5
,然后再次单击toevoegen
,它显示在另一个顺序下面。然后,当我发送邮件时,一切都很顺利,但当我看到我的邮件时,我得到的是:
Naam:5 x Zwart 11
对这些问题有什么帮助吗
<?php
include "authenticatie1_p88";
?>
<?php
ini_set("SMTP", "smtp.olvgroeninge.be");
ini_set("smtp_port", 25);
ini_set ("sendmail_from", "johan.dejonckheere@sintamandscollege.be");
session_start();
// Toevoegen
if( isset( $_GET['ADD'] ) && ereg('^[1-9][0-9]*$', $_GET['aantal'])) {
$_SESSION['winkelwagen'][$_GET['ID']] = $_GET['aantal'];}
// Verwijderen
if( isset( $_GET['DEL'] ) ) {
unset($_SESSION['winkelwagen'][$_GET['ID']]);}
// Alles verwijderen
if( isset( $_GET['EMP'] ) ) {
unset($_SESSION['winkelwagen']);}
// Laat lijst zien
if( isset( $_SESSION['winkelwagen'] ) ) {
foreach ( $_SESSION['winkelwagen'] as $key=>$val ) {
echo "$val x $key<br>";}}
//Verzend de bestelling naar het emailadres
if( isset( $_GET['VER'] ) ) {
$boodschap2 = print_r( $key, true );
$boodschap = "Naam: ".$_GET["naam"]."$val x $key";
mail("nielbutaye@gmail.com","Uw inkt bestelling", $boodschap);
echo "Uw gegevens zijn verstuurd";}
?>
<form><table width="200" border="0" align="center">
<tr>
<td><img src="images/hewlett-packard-51626ae-hp-26-hp51626a.jpg" width="350" height="350" /></td>
<td><img src="images/hewlett-packard-c4810a-hp-11-hpc4810a.jpg" width="350" height="350" /></td>
<td><img src="images/intktpatroona.jpg" width="400" height="400" /></td>
</tr>
<tr>
<td>Product: Zwart 26</td>
<td>Product: Zwart 11</td>
<td>Product: Gekleurd 57</td>
</tr>
</table>
<p>Naam:
<input type="text" name="naam" value="<?php echo $_POST["naam"] ?>"><br>
Product:
<input type="text" name="ID"><br>
Aantal:
<input type="text" name="aantal"><br>
<input type="submit" name="ADD" value="Toevoegen">
<input type="submit" name="DEL" value="Verwijderen">
<input type="submit" name="EMP" value="Legen">
<input type="submit" name="VER" value="Verzenden">
</p>
</form>
产品:Zwart 26
产品:Zwart 11
邮品:Gekleurd 57
纳姆:
您在邮件发送部分中使用$val
和$key
表示您认为自己仍然处于foreach
循环中,但事实并非如此。尝试用以下内容替换:
//Verzend de bestelling naar het emailadres
if( isset( $_GET['VER'] ) ) {
$boodschap2 = '';
foreach ( $_SESSION['winkelwagen'] as $key=>$val ) {
$boodschap2 .= "$val x $key<br>";}
}
$boodschap = "Naam: " . $_GET["naam"] . '<br>' . $boodschap2;
mail("nielbutaye@gmail.com","Uw inkt bestelling", $boodschap);
echo "Uw gegevens zijn verstuurd";
}
//Verzend de bestelling naar het电子邮件地址
如果(isset($_GET['VER'])){
$boodschap2='';
foreach($\会话['winkelwagen']作为$key=>$val){
$boodschap2.=“$val x$key
”;}
}
$boodschap=“Naam:”$_获取[“naam”]。'
“$boodschap2;
邮件(“nielbutaye@gmail.com“,”Uw inkt bestelling“,$boodschap);
回音“Uw gegegevens zijn verstuurd”;
}
希望这能有所帮助。使用您的代码编辑后,结果是:Naam:Array([Zwart 26]=>2[Zwart 11]=>3)更新了我的答案。代码现在有一个foreach
来列出每个订单。让我知道它是否有效。现在它显示了订单,但仍然没有显示我在订单中输入的名称。这是因为名称来自$\u GET
变量。如果当您单击Verzenden
时“Naam”字段为空,则不会显示名称。我想您应该将$\u SESSION['naam']=$\u GET['naam']
添加到//Toevoegen
-块中,然后将我答案中的行更改为$boodschap=“naam:”$_会话['naam']。'
“$boodschap2代码>以便正确邮寄。