0

我有一个学校任务:我需要创建一个用户数据库。

首先,我需要知道如何从数据库中的表中获取信息。然后我需要将用户名写入数据库。

让我们从第一个开始:

我正在与 MAMP 合作。我从老师那里得到了这个样本,我在那里添加了一些回声。

< ?php

$dbhost  = 'localhost';    // Unlikely to require changing
$dbname  = 'chrisdb';        // Modify these...
$dbuser  = 'root';        // ...variables according
$dbpass  = 'root';        // ...to your installation

$db_server=mysql_connect($dbhost, $dbuser, $dbpass) or die(mysql_error());
echo("1");
if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());
echo("2");
mysql_select_db($dbname)
    or die("Unable to select database: " . mysql_error());
echo("3");

?>

所有的回声都被打印出来。这是否意味着我可以访问服务器?如何访问数据库中的表并获取它的值?

以及如何写入数据库?

我不是在寻找最好的代码,更像是最简单的代码。我很感激你能给我的所有帮助。如果你有帮助,请你解释一下你的代码是什么意思?

4

3 回答 3

0

您通过发送语句写入数据库INSERT并使用语句读取SELECT。请参阅文档

我个人讨厌 W3Schools,但本文将让您开始了解如何将数据插入数据库。

您应该注意到mysql_函数已被弃用,您应该使用mysqli_orPDO代替。

于 2012-11-30T22:19:55.233 回答
0

您将在数据库上运行 sql 查询。

这是一个在数据库上运行 select 语句的简单示例(但如果您没有向数据库中插入任何内容,它将不会显示任何内容)

$sqlStatement = "SELECT * FROM tablename;
$result = mysql_query($sqlStatement,$db_server);

//this will calculate the number of rows in $result
 $rows=mysql_numrows($result);

$i=0;
//the loop below will extract each row in $result and put it in $variable. 
while ($i < $num) {
   $variable=mysql_result($result,$i,"column_name");
   $i++;
}
于 2012-11-30T22:23:10.643 回答
0

我认为您需要了解 MAMP 服务器的每个组件的作用。如果您到达第三个回声,那么前面的函数调用都没有失败。如果遇到问题,die() 函数将停止执行并显示 mysql_error() 文本。

为了与数据交互,假设您创建了一个名为 Students 的表,其结构如下:

StudentID   varchar(9)
FirstName   varchar(30)
LastName    varchar(30)

以下是插入行的方法:

<?php
   $result = mysql_query("INSERT INTO Students (StudentID, FirstName, LastName) VALUES ('123456789', 'Michael', 'Hunt')");
   if (!$result) {
      die('query failed: ' . mysql_error());
   }
?>

以下是检索所有行的方法:

<?php
   $result = mysql_query("SELECT * FROM Students");
   if (!$result) {
      die('query failed: ' . mysql_error());
   }
?>

如果检索成功,下面是一个代码片段,可将您的结果放在表格中并显示它们:

<?php
   $numfields = mysql_num_fields($result);
   echo "<table>\n<tr>";
   for ($i=0; $i < $numfields; $i++)
      { echo '<th>'.mysql_field_name($result, $i).'</th>'; }
   echo "</tr>\n";
   while ($row = mysql_fetch_row($result))
      { echo '<tr><td>'.implode($row,'</td><td>')."</td></tr>\n"; }
   echo "</table>\n"
?>
于 2012-11-30T23:10:05.173 回答