1

どうして起こったのかわからない「問題」があります。phpを介してテーブルに行を追加すると、ランダムにどこかに行が追加されます。しかし、私はそれらを上に追加してほしい。代わりに、テーブル全体にそれらを追加するだけです。

 $name = ($_GET["name"]);
 $sql = "INSERT INTO $DB_Table VALUES('$name')";

 $number = ($_GET["number"]);
 $sql = "INSERT INTO $DB_Table VALUES('$number')";

 $con = mysql_connect($DB_HostName,$DB_User,$DB_Pass) or die (mysql_error()); 
 mysql_select_db($DB_Name,$con) or die(mysql_error()); 

 mysql_query("INSERT INTO $DB_Table (Name,number)
 VALUES ('$name','$m_yolo')");



 $res = mysql_query($sql,$con) or die(mysql_error());


        mysql_close($con);
if ($res) {
    echo "success";
}else{
    echo "faild";
}// end else
?>
4

2 に答える 2

2

リレーショナルテーブルには行の順序などはありません。それらを注文したい場合は、ORDER BY句を使用する必要があります。TIMESTAMPデータを選択するときに並べ替えることができる列を追加できます: 11.3.1。DATE、DATETIME、およびTIMESTAMPタイプ

于 2012-05-26T17:45:21.567 に答える
0

別のテーブルを作成しますが、そのテーブルにID自動インクリメント列を追加します。

CREATE TABLE IF NOT EXISTS `table` (
  `id` int(5) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `number` int(10) NOT NULL,
  PRIMARY KEY (`id`)
);

次に、次のように新しい行を挿入できます。

$sql = "INSERT INTO $DB_Table (id, name,number) VALUES ('', '$name', '$number')";

次に、新しいエントリがIDで並べ替えられます。次のクエリを選択して注文できます。

$sql = "SELECT 'name', 'number' FROM `table` ORDER BY 'id' DESC";

ただし、コードに関する1つの注意点は、コードの先頭で行うように$_GETの値を直接使用することは安全ではないということです。mysql_real_escape_string()たとえば、使用してみてください。

于 2012-05-26T17:53:27.363 に答える