对于PHP / SQL和所有这些东西,我是一个完全的新手,也不太熟悉任何一种编程技术。我的问题是,我目前正在尝试将MySQL表中的数据提取到网站上,但是在完成代码后,它会将表中的所有数据提取出。 我希望以某种方式基于其主键仅从特定表行中提取数据。我当前的代码如下所示。
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "rainbow";
$link = mysqli_connect($servername, $username, $password, $dbname);
if($link === false){
die("ERROR: COuld not connect." . mysqli_connect_error());
}
$sql = "
SELECT name
, nick
, surname
, team
, country
, birthdate
, mouse
, dpi
, keyboard
, headset
FROM players
";
if($result = mysqli_query($link, $sql)){
if(mysqli_num_rows($result) > 0){
echo "<table>";
echo "<tr>";
echo "<th>name</th>";
echo "<th>nick</th>";
echo "<th>surname</th>";
echo "<th>team</th>";
echo "<th>country</th>";
echo "<th>birthdate</th>";
echo "<th>mouse</th>";
echo "<th>dpi</th>";
echo "<th>keyboard</th>";
echo "<th>headset</th>";
echo "</tr>";
while ($row = mysqli_fetch_array($result)){
echo "<tr>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['nick'] . "</td>";
echo "<td>" . $row['surname'] . "</td>";
echo "<td>" . $row['team'] . "</td>";
echo "<td>" . $row['country'] . "</td>";
echo "<td>" . $row['birthdate'] . "</td>";
echo "<td>" . $row['mouse'] . "</td>";
echo "<td>" . $row['dpi'] . "</td>";
echo "<td>" . $row['keyboard'] . "</td>";
echo "<td>" . $row['headset'] . "</td>";
echo "</tr>";
}
echo "</table";
mysqli_free_result($result);
}
else {
echo "Ziadny vysledok a nic nefunguje";
}
}
mysqli_close($link);
?>
说实话,我什至不确定这是否是正确的方法,但是它可以正常工作,并且将数据拉入对我来说不必要的HTML表中,我只是想尝试一下。感谢您的回答!
答案 0 :(得分:0)
假设您有一个包含以下代码的页面:
<form action='page2.php' method='post'>
Inform a number:
<input type='text' name='number'>
<input type='submit' value='Send'>
</form>
将上面的表单另存为page1.php
文件page2.php将包含从表中选择一个寄存器并显示结果的代码。
<?php
$id = $_POST["number"];
//The sql command will look like this:
$sql = "SELECT name, nick, surname, team, country, birthdate, mouse, dpi, keyboard, headset FROM players WHERE id = $id";
?>
答案 1 :(得分:0)
几件事。
首先,您通常会将一些机密资料(数据库名称,用户名,密码和服务器名称)保存在单独的文件(例如config.php)中,然后将该文件“包括”在此文件中... include(“ config .php”);
其次,在$ sql行中,您将分别选择所有列,然后在“ while”语句之后的10行中,再次选择它们(用于显示)。我将使用玩家的SELECT *在$ sql行中调用整个表,并在其中跟随WHERE。作为新手,您从batabase进行的基本检索有3个主要词:SELECT(表示去获取您想要的东西,在大多数情况下,用*抓住所有内容)FROM(您要从中获取它的表)表是玩家)和位置(这是您的选择标准... id> 50 ... colour =“ blue” ...您想要的)。当将数据推送到数据库时,您将使用SET和UPDATE,但是在检索... SELECT,FROM,WHERE时。
您的“ while”语句将只执行您的$ sql语句(从,选择,从何处选择)并返回结果,直到记录用完为止
祝新手好运
gri2a