<?php
$url = $_GET['url'];
if($url == "") {
die("Invalid Request! Missing Parameter 1!");
exit;
}
$tags = get_meta_tags($url);
$key = $tags['keywords'];
$desc = $tags['description'];
$con = mysql_connect('HOST', 'USER', 'PASS') or die(mysql_error());
mysql_select_db('zach_WebLock', $con) or die(mysql_error());
$query = "INSERT INTO `Keyword` (`Site`, `Keyword`, `Description`) VALUES ('".$site."', '".$key."', '".$desc."')";
mysql_query($query) or die(mysql_error());
echo '<b>Site: <u>'.$url.'</u></b>';
echo '<br>';
echo '<b>Description:</b>';
echo '<br>';
echo $desc;
echo '<br><br>';
$keys = explode(',', $key);
foreach($keys as $word) {
echo $word;
echo '<br>';
}
?>
此脚本在?url =变量中提取URL的关键字和描述。它显示所有信息,不会引发任何错误,但不会将信息写入数据库。有任何想法吗? (
(我已经省去了mysql_real_escape_string()进行测试)
答案 0 :(得分:3)
您正在尝试插入未定义的变量$site
。也许你的意思是$url
?
如果情况并非如此,请提供更多信息。你从mysql_error()
获得任何输出吗?
答案 1 :(得分:0)
您需要添加''以允许KeyWord表中的主键的AUTO INCREMENTATION,这应该可以阻止MySQL Error的发生。
$query = "INSERT INTO 'Keyword' VALUES ('','$site', '$key', '$desc')";
echo $query;
如果这不能解决您的解决方案,我建议您在运行脚本时回显查询并查看任何空白值,并在必要时进行修复。如果您仍然遇到问题,请复制粘贴从脚本中回显的预期INSERT查询,并在PhpMyAdmin中对其进行测试,看看是否得到了不同的结果(错误)。