通过php将变量从href传递到弹出框

时间:2014-03-21 09:14:28

标签: php variables popup

点击这个href之后,它会弹出一个表单,我试图将一个变量传递给弹出窗体。这是一个循环。

while($row = mysql_fetch_array($result))                                    
{
$id=$row['file_id'];
echo '<span class=right><a href="#edit_form?id='.$id.'">[edit]</a> 
}

这是弹出式表单代码

<a href="#x" class="overlay" id="edit_form"></a>
        <?php
            $con=mysql_connect("localhost","root","");
            mysql_select_db("isiti");
            if (mysqli_connect_errno($con))
                {
                    echo "Failed to connect to MySQL: " . mysqli_connect_error();
                }
            if (isset($_GET["id"])) 
            {                           
                $id =$_GET["id"];
            }
            $result = mysql_query("SELECT * FROM publication where file_id='$id'");
            $row1 = mysql_fetch_array($result);
            $title=$row1['title'];
            $author=$row1['author'];
            $year=$row1['year'];
            $abstract=$row1['abstract'];

                        if(!empty($_SESSION['username']))
                        {
                        echo'<div class="popup">';
                             echo'<form method="POST" action="public_edit.php" enctype="multipart/form-data">';
                                        echo'<div>';
                                            echo'<label for="citation">Title</label>';
                                            echo'<input style="width:100%;" type="text" name="title" id="title" value="'.$title.'">';
                                        echo'</div>';
                                        echo'<div>';
                                            echo'<label for="citation">Author</label>';
                                            echo'<input style="width:100%;" type="text" name="author" id="author" value="'.$author.'">';
                                        echo'</div>';
                                        echo'<div>';
                                            echo'<label for="citation">Year</label>';
                                            echo'<input style="width:100%;" type="year" name="year" id="year" value="'.$year.'">';
                                        echo'</div>';
                                        echo'<div>';
                                            echo'<label for="abstract">Abstract</label>';
                                           echo'<textarea name="abstract" id="abstract" size="5000">'.$abstract.'</textarea>';
                                        echo'</div>';
                                        echo'<p>Rechoose your file here</p>';
                                        echo'<input type="hidden" name="MAX_FILE_SIZE" value="2000000">';
                                        echo'<input name="userfile" type="file" id="userfile">&nbsp;';
                                        echo'<br/> ';
                                        echo'<input name="submit" type="submit" value="Upload" style="width: 150px">';
                                echo'<a class="close" href="#close"></a>';
                                echo'</form>';
                        echo'</div>';
                        }

我遇到的问题是它没有传递正确的ID。无论我点击什么链接,它都会显示第一个id的数据。

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

调用弹出窗口时,需要将id作为get参数传递。在第一个代码

中替换为echo语句
echo '<span class=right><a href="#edit_form?id= ' .$id .'">[edit]</a>'; 

答案 1 :(得分:0)

$ _ GET适用于查询字符串发送的数据。在这种情况下,您将数据作为href标记的id发送。 所以尝试将id附加到查询字符串。

 echo '<span class=right><a href="#edit_form?id='.$id.'">[edit]</a>