我有以下代码(由于 css 无关而被截断),我正在尝试提交到我的 MSSQL 服务器。问题是,我尝试的每件事都会引发错误。代码分为 2 个 PHP 页面。第 1 页有表单,第 2 页有连接数据和字符串。
第 1 页(我有一个 js 函数可以复制跨度部分中的文本,因此您可以在提交之前对其进行预览,这就是为什么底部有额外内容的原因):
<form action="create.php" name="frmAdd" method="post">
<div class="news"><a id="news1"></a>
<div class="newstitle">
<h3>
<input id="headline" type="text" maxlength="50" name="headlinetxt" />
</h3>
</div> <em><h5>
<input id="timestamp" type="text" name="timestamptxt" />
</h5></em>
<div class="divider"></div>
<p>
<textarea id="news" type="text" name="newstxt"></textarea>
</p>
</div>
</div>
<div class="news"><a id="news1"></a>
<div class="newstitle">
<h3>
<span id="headlinedisp" /></span>
</h3>
</div> <em><h5>
<span id="timestampdisp" /></span>
</h5></em>
<div class="divider"></div>
<p><span id="newsdisp" /></span>
</p>
</div>
</div>
<div id="button" onClick="document.forms['frmAdd'].submit();">Submit</div>
</form>
第2页:
<head>
<title>News Edit</title>
</head>
<body>
<?php
include('/adodb5/adodb.inc.php');
$db = NewADOConnection('odbc_mssql');
$dsn = "Driver={SQL Server};Server=sage;Database=live;";
$db -> Connect($dsn,'user','pass');
$strSQL = "INSERT INTO website_news VALUES ('".$_POST["headlinetxt"]."','".$_POST["timestamptxt"]."','".$_POST["newstxt"]."') ";
$upld = $db->Execute($strSQL);
If($upld)
{
echo("Complete");
}
else
{
echo("Error");
}
$db->Close();
$db = null
?>
</body>
有没有人知道为什么这可能无法连接?我认为这是我的第 2 页的第 10 行(它编译 SQL)的问题,因为这在我的调试早期给了我单独的错误。我在第 1 列中确实有一个唯一 ID,但理论上这应该是自动填充的,尽管我不知道我是否需要使用类似 ...IDENTITY,'".$POST_["headline....等等,因为真的没有必要。有没有更好的方法来调试代码的不同部分,而不仅仅是显示错误?(编辑:昨晚发现我可以使用 objErr 就像在 VB 中使用 Err 一样。根本没想到。会测试一下,看看我得到了什么)
(PS。一个小问题,如果需要,我将单独发布。我的重复函数在理论上可以正常工作(即它在 JSFiddle 中工作),但是一旦我把它放在适当的位置,我就无法让它工作在网站本身上,在 Chrome 中运行,运行与小提琴相同的规范 jQuery。小提琴在这里:http: //jsfiddle.net/bmgh1985/XcScd/)