php - 使用 PHP 变量作为 MySQL 中的表名

标签 php mysql sql facebook facebook-graph-api

use php variable in name of mysql create table

我想使用 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')";

关于php - 使用 PHP 变量作为 MySQL 中的表名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25396122/

相关文章:

mysql - 准备好的语句,具有 1 亿条记录的 MyISAM 和 MySQL 上的缓存

javascript -/user/后显示用户名的用户信息

php - 从日期和时间数组中识别冲突

javascript - 具有两个 onClick 操作的 Google Analytics 虚拟网页浏览

php - Cron Job 循环没有从 mysqli 对象中获取任何信息,但 print_r 表示有行;在浏览器中运行时完美运行

php - 统计一个数据表并求和,用默认值填充一个空数据

java - SELECT FOR UPDATE 在迁移期间锁定数据库

mysql - 在 SQL 中删除数据库时出错(不能 rmdir './tract',errno : 66)

c# - 这是清除 SqlDataAdapter 和 Sql 命令参数并关闭连接的正确顺序吗?

SQL:如何正确加入以便从通话记录中计算联系人统计信息