簡體   English   中英

在MySQL中使用PHP變量作為表名

[英]Using PHP variable as name of table in MySQL

在mysql create table的名稱中使用php變量

我想使用PHP變量($ userAltId)作為我正在創建的SQL表的名稱。 但是,盡管看了幾個示例,但我無法使用此PHP變量成功創建表。 使用echo可以顯示變量($ userAltId)確實包含預測值,如果插入該值而不是變量,則可以成功創建表。

我對代碼的最新嘗試如下,請注意,從創建,插入和選擇開始,我使用$ useAltId三次。 謝謝您的幫助!

<?php

$con=mysqli_connect('localhost', 'alexpnqo_johnny', '?KlI+TtfNEIO', 'alexpnqo_johnny');
// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
session_start();
$userAltId = $_SESSION['userAltId'];//I am passing $userAltId from another php file


// escape variables for security
$FBname = mysqli_real_escape_string($con, $_POST['FBname']);

echo $userAltId;//echos desired value

$sqlFriendList="INSERT INTO '$userAltId' (FacebookFriend)
VALUES ('$FBname')";

if (mysqli_query($con,$sql)) {
  echo "Table created successfully";
} else {
  echo "Error creating table: " . mysqli_error($con);";
}

echo "You have added ";
echo $FBname;
echo " to your friend's list!";
echo "<br>";
echo "Below is your friends list";
echo "<br>";
echo "<br>";


$result = mysqli_query($con, "SELECT FacebookFriend FROM '$userAltId'");

echo "<table border='1'>
 <tr>
<th>Friends List</th>
</tr>";

while($row = mysqli_fetch_array($result)) {
    echo "<tr>";
    echo "<td>" . $row['FacebookFriend'] . "</td>";
    echo "</tr>";
}

echo "</table>";

mysqli_close($con);
?> 

對所有查詢(表名)使用反引號$userAltId ,以便它將讀取變量甚至空格。

$sqlFriendList="INSERT INTO `$userAltId` (FacebookFriend) VALUES ('$FBname')";

暫無
暫無

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

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