无法在url中显示id,并且插入数据库的数据显示为空白

时间:2013-12-10 16:44:16

标签: php database url insert

我想在网址上获取ID。它显示id变量的名称,而不是显示id。我还想将eventid,event,venue和username插入到数据库中,但是event和username显示为空白但id增加了。问题是什么?

<?php
require 'database.php';

$qry = "SELECT b.event_id, b.event, b.venue, u.username, s.name, s.gender, s.email, s.phone FROM bulletin b JOIN unite u JOIN student s WHERE b.event_id = u.event_id AND u.username = s.username ORDER BY event_id";
$result = mysql_query($qry) OR die (mysql_error());
     while ($row = mysql_fetch_row($result)){

             $eventid = $row[0];
                 $event = $row[1];
                 $venue = $row[2];
                 $username = $row[3];
                 $name = $row[4];
                 $gender = $row[5];
                 $email = $row[6];
                 $phone = $row[7]; 

?>

    <tr>
    <td><center><?php echo $row[0]; ?></center></td>
    <td><center><?php echo $row[1]; ?></center></td>
    <td><center><?php echo $row[2]; ?></center></td>
    <td><center><?php echo $row[3]; ?></center></td>
    <td><center><?php echo $row[4]; ?></center></td>
    <td><center><?php echo $row[5]; ?></center></td>
    <td><center><?php echo $row[6]; ?></center></td>
    <td><center><?php echo $row[7]; ?></center></td>
    <td><center>
              <br><form method="post" action="attend.php?eventid=<?php echo $row['event_id']; ?>" name="event_form1" target="_top">
              <input type="submit" name="submit" value=" Attend "></form></br>
              <br><form method="post" action="not_attend.php" name="event_form1" target="_top">
              <input type="submit" name="submit" value=" Not Attend "></form></center></br>                       
             </td>

            </tr>
             <?php 
             } ?>

attend.php

<?php
session_start();
require 'database.php';
$events= $_GET['eventid'];

$qry = "INSERT INTO attend (event_id, name_event, username) VALUES ('$events', '$event', '$username')";

$result = mysql_query($qry) or die (mysql_error());
if ($result){
//echo $result;
    header("location:activity_a.php?success=&eventid=$events");
    exit();
}else {
    die ("Query failed");
}

?>

1 个答案:

答案 0 :(得分:0)

您没有通过表单传递任何变量,现在,您只需设置提交按钮。如果您计划使用出席/不出席系统,那么您需要重新执行sql以再次为变量提取信息。或者,您需要为每个表单设置隐藏的输入

将您的attend.php更改为:

<?php
session_start();
require 'database.php';
$events= $_GET['eventid'];

$qry = "SELECT b.event, u.username FROM bulletin b JOIN unite u JOIN student s WHERE b.event_id = u.event_id AND u.username = s.username ORDER BY event_id";
$result = mysql_query($qry) OR die (mysql_error());
$row = mysql_fetch_array($result)
$event = $row[0];
$username = $row[1];

$nqry = "INSERT INTO attend (event_id, name_event, username) VALUES ('$events', '$event', '$username')";

$nresult = mysql_query($nqry) or die (mysql_error());
if ($nresult){
//echo $nresult;
    header("location:activity_a.php?success=&eventid=$events");
    exit();
} else {
    die ("Query failed");
}

?>

相应地更改此值以匹配您的数据库。

编辑:

我不小心设置了相同的变量并被覆盖了。