【问题标题】:Php,MySql Sending Query To DatabasePHP,MySql 向数据库发送查询
【发布时间】:2013-01-04 07:42:46
【问题描述】:

http://jsfiddle.net/Fd9wx/ 我这样做是为了帮助解决我的问题

所以我有一些 php 代码和 html 代码应该在我创建的 html 表上将 sql Query 发送到数据库,比如设置新数据库,但是我填写了我的表单并单击运行它不想工作我。在你说“使用 PDO 并且不再支持”之前,我做了一些谷歌研究并没有得到任何回报在这里手工制作这个脚本,所以不要说“联系脚本开发”,如果有人可以指出我解决我的问题的正确方向,或者只是让我的 sql 错误显示在我的脚本中?喜欢要删除的内容和所有内容

这是我脚本的主要部分

$tablename=$_POST['tablename'];
$value=$_POST['value'];
$type=$_POST['type'];
$length=$_POST['length'];
$collation=$_POST['collation'];
$attributes=$_POST['attributes'];
$null=$_POST['null'];
$extra=$_POST['extra'];


// Insert data into mysql 
$sql="CREATE TABLE  `a7972613_db`.`$tablename` (
`field1` $type( $length ) $null $extra
) ENGINE = MYISAM";
$result=mysql_query($sql);
// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Successful";
}

else {
echo "Please Go Back And Check Your Errors!";
}

这是我的主要部分

【问题讨论】:

标签: php html mysql database phpmyadmin


【解决方案1】:

你的代码的问题是你没有选择数据库。

$host = "xxxxx";
$database = "xxxxx";
$user = "xxxx";
$password = "xxxxx";

// Connect to server and select database.
mysql_connect("$host", "$user", "$password")or die("cannot connect"); 

使用以下代码选择数据库

// Connect to server and select database.
$conn = mysql_connect("$host", "$user", "$password")or die("cannot connect"); 
mysql_select_db($database,$conn);

另一个问题是当你的查询失败时,你已经硬编码了错误,但是使用下面的代码来检查你的查询中的问题在哪里

$result=mysql_query($sql) or die(mysql_error());

【讨论】:

  • 我做了这个并直接从数据库中运行它并且它可以工作看看我的 jsfiddle 我的表名没有被发送通过我试图在数据库上运行查询而不是表 CREATE TABLE a7972613_db.@987654325 @ ( field1 VARCHAR( 15 ) NOT NULL ) ENGINE = MYISAM
【解决方案2】:

将您的查询更改为

$result = mysql_query($sql) or die("Error with $sql: " . mysql_error());

使用mysql_error(),您将看到您的问题所在。

您可以转储您的$sql 字符串以查看是否正确

echo $sql;

【讨论】:

  • @user1978141 你从$_POST 数据中得到$tablename。在表单中输入正确的表名,然后重试。
  • @user1978141 1236 不是有效的表名。使用以字母开头的名称。
  • 查询数据库而不是表,查询使用 html 生成并发送到 php,php 在数据库上运行它而不是表,它是一个无需登录 sql mamager 即可创建数据库的脚本跨度>
  • @user1978141 你写了create table a7972613_db.1236 ... 作为评论。例如使用create table a7972613_db.a1236 ... 之类的东西。
猜你喜欢
  • 1970-01-01
  • 2023-03-18
  • 1970-01-01
  • 1970-01-01
  • 2011-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-25
相关资源
最近更新 更多