2015-05-04 124 views
1

我对此时正在处理的任务有问题。我有一个下拉列表,我可以选择一个用户在我的网站上向他们发送消息。问题是,每次我尝试选择一些内容时,它都会继续从列表中选择最后一项。下面的代码是一个我在从数据库表中查询宣布在我的PHP文件的顶部:下拉列表不断从列表中选择最后一项

while($row=mysqli_fetch_array($query)) { 

    $User_id= $row['User_ID']; 
    $USERname = $row['Username']; 

    $options.= "<option value=>".$USERname."</option>"; 

} 

而这一次的,我尝试在形式在下拉显示的下拉列表中的用户名列表:

<form method="post" action="message_send_new.php"> 
    <tr> 
    <td width="165">To</td> 
    <td width="605"> 
    <select name ="to_username" id="to_username"> 
<OPTION VALUE=0> 
<?php echo $options; ?> 
</OPTION ></select> 

</td> 

我觉得东西不对,在这一行<OPTION VALUE=0>但我不完全确定它。

此后,我写了这些内容,用户发送的消息应该正确地发送到目标用户的收件箱,并且该消息也应显示在前用户的发件箱中,但由于某些原因该部分不能正常工作太。

if(isset($_POST['submit1'])) { 

    $to_username=isset($_POST['to_username']); 
    $title=$_POST['title']; 
    $message=$_POST['message']; 
    $to_userid=isset($_POST['to_userid']); 
    $userid=$_POST['User_ID']; 
    $from_username=isset($_POST['from_username']); 
    $senddate=isset($_POST['senddate']); 

} 
require_once "includes/connect_i.php"; 

$query = mysqli_query($myConnection, 
"INSERT INTO pm_outbox(userid,username,to_userid,to_username, 
title,content,senddate) 
VALUES('$Userid','$Username','$User_id','$USERname', 
'$title','$message',Now())") or die (mysqli_error($myConnection)); 

$query = mysqli_query($myConnection, 
"INSERT INTO pm_imbox(userid,username,from_id,from_username, 
title,content,recieve_date) 
VALUES('$User_id','$USERname','$Userid','$Username', 
'$title','$message',Now())")or die (mysqli_error($myConnection)); 

我试过在2个查询前使用上面的值插入到表中,但仍然无处可去。我看到了一个关于下载列表问题的案例,类似于我在这个网站上的某个地方,但它对我的帮助不大。我对代码中的任何不小心的错误表示歉意,因为我已经在PHP中编写了很长一段时间了。谢谢!

更新: 我不确定这是如何完成的。下面的代码块是我试图表明用户是邮件的发件人,而最后一块代码是我试图显示邮件将发送给选定用户的地方选项从下拉列表中选择。

$sqlCommand= "SELECT User_ID, Username FROM users WHERE Username='" . $_SESSION['username']. "'"; 
$query = mysqli_query($myConnection,$sqlCommand) or die (mysql_error()); 
while ($row = mysqli_fetch_array($query)) { 
    $Userid = $row ["User_ID"]; 
    $Username = $row["Username"]; 
} 
mysqli_free_result ($query); 

if(isset($_GET['User_ID'])){ 
$to_userid=$_GET['User_ID']; 

$sqlCommand = "SELECT User_ID,Username FROM users WHERE User_ID='$to_userid'"; 
$query=mysqli_query($myConnection, $sqlCommand) or die (mysql_error()); 

while($row=mysqli_fetch_array($query)) { 
    $to_userid=$row['User_ID']; 
    $USERname=$row['Username']; 
    } 
    mysqli_free_result($query); 
} 

回答

0

您生成的option有一个小错误。它应该是 -

<select name ="to_username" id="to_username"> 
<OPTION VALUE=0>Select One</OPTION > 
<?php echo $options; ?> 
</select> 

而且你不设置任何值他们 - $options.= "<option value=>".$USERname."</option>";

如果你想在id成为价值 -

$options.= "<option value='".$User_id."'>".$USERname."</option>"; 
+0

我固定的,但我仍保持结束在实际上我选择了其他用户时,向下拉列表中的最后一个用户发送消息。 –

+0

你能显示生成的html吗? –

+0

恩..对不起,你的意思是输出或什么? –

相关问题