簡體   English   中英

將下拉菜單值發布到mysql單元

[英]Posting drop down menu value to mysql cell

好的,所以在涉及PHP和MySQL編程時,我還是一個初學者,因此問題可能有點笨拙,但是無論如何這是我的情況。 我有一個帶有下拉菜單的內容頁面,該頁面應該給我一個$ _POST值(這些選項取自數據庫列):這是該代碼

    <link href="../css/pagestyle.css" rel="stylesheet" type="text/css" />
<?php
include("../panel/config.php");

    $db = mysqli_connect($server, $username, $password, $database);
    if(mysqli_connect_errno()) { //if connection database fails
     echo("Connection not established " .
     mysqli_connect_error($db) . "</p>");
       }  

    $query = "SELECT username FROM users WHERE email = '1' ORDER BY username ASC";

    $result = mysqli_query($db,$query);

    if (!$result) { 
     echo("Error, the query could not be executed: " .
     mysqli_error($db) . "</p>");
     mysqli_close($db);
     }

    echo "
  <form action='myscript' method='post'>
   <select name='test'>
        <option value = 'none' selected = 'selected' >
          `Select a DJ:` </option>";

    while ($row = mysqli_fetch_assoc($result)){
     echo '<option value="' . $row['username'] . '">' . $row['username']. '</option>';
       }
     echo"     
     <input type='submit' value='submit' name='submit'>
     </select>
    </form> ";
    ?>  

我知道這么小的功能的代碼很多。 無論如何,下拉菜單從數據庫列中獲取其選項,並且工作正常,現在當我按下提交按鈕時,它將運行另一個php頁面,其編碼如下:

<link href="../css/pagestyle.css" rel="stylesheet" type="text/css" /><html>
<?php 
include("../panel/config.php");

$con = mysqli_connect($server, $username, $password, $database);
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$id = $_POST['test'];

$order = "UPDATE  `habboxli_system`.`users` SET  `points` = points+1 WHERE  `users`.`username` ='$id'";
mysql_query($order);

echo "name is $id";

mysqli_close($con);
echo "Vote posted!";
?> 

該代碼應采用在下拉菜單中選擇的值,並使用它來更新數據庫中的特定單元格,我將其簽名到一個名為$ id的變量中,僅用於測試目的,但該值似乎為空,因此我認為從原始頁面(www.mywebsite.com/#/option.php)導航到myscript.php頁面(www.mywebsite.com/#/myscript)時,下拉菜單未返回任何值。 php)。 對於如何使它起作用的任何幫助將不勝感激。

正如評論中所說,您正在使用與mysqli函數混合的mysql_query函數。

我通過更改代碼來為我工作

mysql_query($order);

至:

mysqli_query($con, $order);

您還可以通過簡單地打印$ _POST數組來調試傳遞給腳本的內容:

print_r($_POST);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM