我目前正在学习Web开发,并尝试在PHP中组合一个简单的应用程序,将来自智能和非移动类型的手机的SMS消息存储到Web服务器上托管的MySQL数据库中。稍后我会用这些字符串做一些其他的事情,但是现在正在努力使整个事情发挥作用。
我一直在尝试使用这个平台: http://www.txtweb.com/
允许传递给消息的Web应用程序,@关键字形式的“位置键”以及texter的编号。然后它使用html请求向用户返回信息,其中返回body标签中的所有内容。他们没有MySQL接口的任何直接示例,也没有论坛中的任何讨论。在这里,我遵循了他们的一个代码示例,可以获得返回文本,但无法在数据库中获取任何操作。有没有人有建议将更好的方法收集到MySQL数据库中的SMS消息或者我的代码中可能存在一些明显的缺陷?我将把我正在尝试的内容放在下面,非常感谢你的帮助。
<?php
define("DB_SERVER", "...");
define("DB_USER", "...");
define("DB_PASS", "...");
define("DB_NAME", "...");
=$connection = mysql_connect(DB_SERVER,DB_USER,DB_PASS);
if (!$connection) {
die("Database connection failed: " . mysql_error()); }
$db_select = mysql_select_db(DB_NAME,$connection);
if (!$db_select) {
die("Database selection failed: " . mysql_error());
} ?>
<html>
<head>
<meta name=\"txtweb-appkey\" content=\"VALUE ASSIGNED BY PLATFORM\">
</head>
<?php if(isset($_GET['txtweb-message'])) $message = $_GET['txtweb-message'];
if(isset($_GET['txtweb-mobile'])) $number = mysql_prep($_GET['txtweb-mobile']);
if(isset($_GET['txtweb-location'])) $location = mysql_prep($_GET['txtweb- location']);
$query = "INSERT INTO ... (
`Number`, 'Message', 'Location' )
VALUES (
'{$message}', '{$number}', '{$location}' )";
mysql_query($query, $connection); ?>
<body>
"message to user, yet to be determined"
</body>
</html>
<?php mysql_close($connection); ?>
答案 0 :(得分:2)
您使用单引号('
)来封装列名。 MySQL不会那样。你应该使用反引号(`)来包含列名。
请注意,Number使用反引号,Message和Location使用单引号。
`Number`, 'Message', 'Location'
尝试:
`Number`, `Message`, `Location`
答案 1 :(得分:0)
可能值得调用mysql_error吗?
print mysql_error();
在
之后调用它mysql_query($query, $connection);
执行此操作时,查询中的任何错误都会显示在页面上。