0

仍然习惯于stackoverflow,请原谅我的菜鸟.. :)

有一个 SQL 查询,它返回一个放入 php 表中的数据。我希望这张桌子用于购买。

我的想法是使用产品 ID,这意味着我将使用动态 php 变量(不确定我现在是否正在这样做)相信我看到了类似 $.$varaible$.$ 的帖子,它不是很清楚,而且是一个不同的主题。

我的代码如下:

$result = mysqli_query($con, "SELECT * FROM Product WHERE Type = 'Game'");
?>

<div class="wrapper">
    <h1 class="headGame">Buy Some Games Man</h1>
</div>
<br />
<div class="wrapper">

<?php
    echo 
    "<table border='1'>
    <tr>
    <th> Name </th>
    <th> Picture </th>
    <th> Console </th>
    <th> Description </th>
    <th> Price </th>
    <th> Amount </th>
    </tr>";

    echo '<form id="gamesOrder" action="purchase.php">';

    while($row = mysqli_fetch_array($result)) {
        $id = $row['Pd_Key'];
        echo"<tr>";
        echo"<td>" . $row['Name'] . "</td>";
        echo"<td>" . '<img class="prdPic" src="'. $row['Picture']. '">' . "</td>";
        echo"<td>" . $row['Type2'] . "</td>";
        echo"<td>" . $row['Description'] . "</td>";
        echo"<td>" . $row['Price'] . "</td>";
        echo"<td>"  . '<input type="number" min="0" max="100"; name="'.$id.'" value=0>' . "</td>";
        echo"</tr>";
    }
    echo '<input type="submit" value="  BUY  ">';
    echo '</form>';
?>

当我单击提交时,它会更改 url 但没有任何反应,它不会重定向。

关于如何让整个过程发挥作用的任何建议。在采购表单中使用的变量,通过一个 php 文件,即 (purchase.php) 和用于此的变量。

编辑 - 有小错误,但在变量 %id 上仍然不是 100%,不会重新定义每个循环,我怎样才能让它动态化,以便它可以以一种形式用于识别用户想要购买的东西。

现在重定向但不重定向到 purchase.php

网址是~/purchase.php?1=0&2=0&3=0&4=0&5=0&6=0&7=0&8=0&9=0&10=0&11=0&12=0&13=0&14=0&15=0&16=0&17=0&18=0&19=0&20=0&21=0

谢谢你的传奇!=D

4

3 回答 3

1

您缺少结束表格插入符号:

echo '<form id="gamesOrder" action"purchase.php"';

应该:

echo '<form id="gamesOrder" action="purchase.php">';

您的 ID 连接也不正确:

echo"<td>"  . '<input type="number" min="0" max="100"; name=".$id." value=0>' . "</td>";

应该只是:

echo"<td>"  . '<input type="number" min="0" max="100"; name="id" value="' .$id. '" value=0></td>';

要访问 purchase.php 中的 id,请使用以下代码:

$id = isset($_GET['id']) ? $_GET['id'] : null;

您需要使用等号将操作分配给表单:

action="myaction.php"
于 2014-10-28T19:14:58.970 回答
0

而且您没有正确传递ID...

    echo"<td>"  . '<input type="number" min="0" max="100"; name=".$id." value=0>' . "</td>";

应该

    echo"<td>"  . '<input type="number" min="0" max="100"; name="'.$id.'" value=0>' . "</td>";

哦,在表格上你需要采取行动=

    echo '<form id="gamesOrder" action="purchase.php">';
于 2014-10-28T19:18:29.327 回答
0

好的,首先你有一些 HTML 错误,让我们看看:

  • 在 Form 元素中,您需要关闭它并包含方法(作为 POST),请参阅:

    <form id="gamesOrder" action="purchase.php" method="POST">

  • 要使用表单发送数据,您需要将数据库中的数据包含在表单字段中,如下所示:

    echo '< input type="text" name="myFieldName" value="'.$row['Price'].'">';

任何问题让我知道...干杯。

于 2014-10-28T19:28:11.907 回答