0

我有两个问题:

  1. 他没有发送我在表格中填写的姓名。
  2. 他只发送我作为产品和数量放入的最后一件事。

例如:如果我输入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>
4

1 回答 1

1

您在邮件发送部分中使用$valand$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";
}

希望这可以帮助。

于 2012-05-30T12:15:18.900 回答