0

我有 JS 代码,它由以下形式调用:

//////////////// About Tab
$(document).ready(function(){
    $("form#FanDetail").submit(function() {
    // store the values from the form input box, then send via ajax below
    var bio = $('#bio').val();
    var dob = $('#dob').val();
    var zip = $('#actualZip').val();
    var occup = $('#actualOccup').val();
    var fbkurl = $('#fbkurl').val();
    var twiturl = $('#twiturl').val();
    var phoNum = $('#phoNum').val();
    $.post(
            "../src/php/registration/about/submitvalues_about_tab.php",
            $("form#FanDetail").serialize(),
            function(){
                $('form#FanDetail').hide(function(){
                    $('div.success').fadeIn();
            });
          });
       return false;
    });
});

js调用的php代码:

    ///////////////////////////////////////////////
    ######## Get  Input to Submit ############## //
    ///////////////////////////////////////////////
    $fanBio=$_POST['bio'];
    $fanDob=$_POST['dob'];
    $zipval=$_POST['zip'];
    $occupval=$_POST['occup'];
    $facebookurl=$_POST['fbkurl'];
    $twitterurl=$_POST['twiturl'];
    $phoneNum=$_POST['phoNum'];
    $fanID=1;


try{
    //$sessionvar = session_id();
    ### DB Connection already established above.
    $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );  
    $sth = $dbh->prepare("
    UPDATE Fan 
    SET fanBio=:fanBio,fanDob=:fanDob,fanDetLocID=:zipval,occupID=:occupval,fanFbk=:facebookurl,fanTwit=:twitterurl,fanPho=:phoneNum
    WHERE fanID=:fanID
    ");
    $sth->bindParam(':fanBio', $fanBio);
    $sth->bindParam(':fanDob', $fanDob);
    $sth->bindParam(':zipval', $fanZip);
    $sth->bindParam(':occupval', $fanOccup);
    $sth->bindParam(':facebookurl', $fanFbk);
    $sth->bindParam(':twitterurl', $fanTwit);
    $sth->bindParam(':phoneNum', $fanPhone);
    $sth->bindParam(':fanID', $fanID);
    $sth->execute(array(':fanBio' => $fanBio,':fanDob' => $fanDob,':zipval' => $zipval,':occupval' => $occupval,':facebookurl' => $facebookurl,':twitterurl' => $twitterurl,':phoneNum' => $phoneNum,':fanID' => $fanID));

    $sth->debugDumpParams(); ## debugging query
} 

catch(PDOException $e){
echo "ERROR HAS HAPPENED CATCH{}";
file_put_contents('../../../../PDODBConnectionErrors.txt','ERROR: [submitvalues_about_tab.php] about '.$e->getMessage(), FILE_APPEND);  
}

** 原始 HTML 代码**

<form method="post" id="FanDetail">
<textarea id="bio" name="fan_bio" cols="27" rows="3"></textarea><br />
<input id="dob" name="fan_dob" value="(e.g. 01/05/1965)" onFocus="clearText(this)" /><br />
<div class="ui-widget">
    <input id="zip" name="term" value="What is your Zipcode?" onFocus="clearText(this)" /><br />
    <input id="actualZip" type="hidden" name="actualzipval" value="" />
</div><!--ui-widget :: zip -->
    <div class="ui-widget">
    <input id="occup" type="text"  name="term2" value="e.g. Computer Programmer, etc" onFocus="clearText(this)" /><br />
    <input id="actualOccup" type="hidden" name="actualOccupval" value="" />
</div><!--ui-widget :: occup -->
<input id="fbkurl" type="text"  name="fan_fbk" value="e.g. SportsFan12" onFocus="clearText(this)" /><br />
<input id="twiturl" type="text"  name="fan_twit" value="e.g. AboutSports2012" onFocus="clearText(this)" /><br />
<input id="phoNum" type="text"  name="fan_pho" value="cell or home phone" onFocus="clearText(this)" /><br />
<input style="background-image:url('img/save.png');" type="submit" name="saveAbout" value="" id="submit" />
</form>
<div class="success" style="display:none;">Got it!</div>

我最初尝试使用:

  1. Positioned Placeholders:没有成功(得到与下面所述相同的错误)
  2. 检查以确保通过输入硬编码的值来确保查询工作UPDATE Fan正常,并且工作正常。
  3. 确保位于catch{} block(未显示)中的文件中没有任何内容
  4. 检查以确保我的本地主机允许 PDO,确实如此。

SQL 输出:[165] UPDATE Fan SET fanBio=:fanBio,fanDob=:fanDob,fanDetLocID=:zipval,occupID=:occupval,fanFbk=:facebookurl,fanTwit=:twitterurl,fanPho=:phoneNum WHERE fanID=:fanID

    Params:  8
    Key: Name: [7] :fanBio
    paramno=-1
    name=[7] ":fanBio"
    is_param=1
    param_type=2
    Key: Name: [7] :fanDob
    paramno=-1
    name=[7] ":fanDob"
    is_param=1
    param_type=2
    Key: Name: [7] :zipval
    paramno=-1
    name=[7] ":zipval"
    is_param=1
    param_type=2

*问题是,它仍然没有更新行,但它通过调用$sth->debugDumpParams();*它给了我上面的输出 ^^ 给了我一个响应。这个回复有问题吗?请记住,其中的文件try{}是空白的,没有写入任何错误。

4

0 回答 0