【问题标题】:Send column name from button从按钮发送列名
【发布时间】:2015-02-01 05:15:03
【问题描述】:

我做了一个php页面。我在其上显示来自我的数据库的表“产品”。 每一行都显示得很好。今天我尝试在表格每一行的末尾添加一个名为“rate”的按钮。我成功地做到了。现在我想在单击该按钮时将该行的第一列的值发送到另一个 php 页面。我被卡住了怎么办?你能帮忙吗?

我知道我必须在我的表单中使用 post 方法,并且我必须在另一个 php 页面上使用 $_post[that value] 来灌输进一步功能的价值。

我只需要询问在哪里将我的第一列的值添加到按钮行中。以便 onclick 它可以发送该值。我希望我对此很清楚。非常感谢您的帮助:)

<?php 
include("connection.php");

$query = "select *  from prod"; 
$res = oci_parse($conn,$query); 
usleep(100); 
if (oci_execute($res)){ 
        usleep(100); 
       
   print "<TABLE border \"1\">"; 
        $first = 0; 
        while ($row = @oci_fetch_assoc($res)){ 
                if (!$first){ 
                        $first = 1; 
                        print "<TR><TH>"; 
                        print implode("</TH><TH>",array_keys($row)); 
                        print "</TH></TR>\n"; 
                } 
                print "<TR><TD>"; 
                print @implode("</TD><TD>",array_values($row)); 
                print "</TD></TR>\n"; 
				
            echo "<td><form action='detailform.php' method='POST'><input type='submit' name='submit-btn' value='Rate'/></form></td></tr>";
		   
		}     
        print "</TABLE>"; 

		} 
	
?>

【问题讨论】:

  • 使用您需要的值的隐藏输入。

标签: php button send


【解决方案1】:

您必须在表单中添加您喜欢的任何类型的输入

echo "<td>
          <form action='detailform.php' method='POST'>
               <input type='hidden' name='your_val_key' value='".$row[your_val_key_in_query]."'> <!-- input hidden, change to text 4 debug -->
               <input type='submit' name='submit-btn' value='Rate'/>
          </form>
      </td></tr>";

然后,在您的detailform.php 中,您可以通过

echo $_POST["your_val_key"];

如果你不确定你发送了多少数据或其他东西,试试这个,你会得到完整的数据:

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

顺便说一句:你为​​什么要混合打印和回声?

【讨论】:

  • 不!对不起,这是错误的。我只是想弄清楚一些事情。请你能帮我解决这段代码中的其他问题吗?我什至无法找到要放在“your_value _key_in 查询”中的列的值。你能帮我吗?我所做的是我用 $row[1] 替换了 'your_value _key_in_query' 以从行中获取第 1 列。 bt 它给出了错误。 “未定义的偏移量 0”你能帮帮我吗?
  • 只需使用您选择的列名,即表中的列名。如果您的列名之一是“extradata”,那么您必须使用$row["extradata"] - 顺便说一句,array_keys 也会将您的列名放在外面
【解决方案2】:

使用隐藏输入

echo "<td><form action='detailform.php' method='POST'><input type='hidden' name='col-name' value='you-col-value'><input type='submit' name='submit-btn' value='Rate'/></form></td></tr>";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    • 2011-08-12
    • 2011-09-09
    • 1970-01-01
    相关资源
    最近更新 更多