我想使用php和ajax向mySql数据库提交信息。
信息被发送的页面(form.php)有多个表单,这些表单是由“while()”循环生成的。
成功后,我将会更新一个特定表单所在div的响应。
我目前使用的是jQuery和jQuery表单插件。
I have been successful in getting the data to the database, however I am having trouble with the response being sent back to the proper div. I have been successful in getting a response back to a div that is outside of the while() loop. I have not, however, been successful in getting a response back to a div within the loop. I have placed in the code below a div called: "> Where I would like the note to be placed.
我知道这与我的JavaScript函数有关:
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery( form ).ajaxForm({
target: #noteReturn ,
success: function() { $( #noteReturn ).fadeIn( slow ); }
});
});
</script>
#noteReturn 函数没有指定应该放置在哪个 business div 中。
我希望这有意义。
谢谢您的帮助。
代码如下:
<!-- the form.php page -->
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/forms.js"></script>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery( form ).ajaxForm({
target: #noteReturn ,
success: function() {
$( #noteReturn ).fadeIn( slow ); }
});
});
</script>
<?php
$query = mysql_query("SELECT * FROM businesses");
while( $row = mysql_fetch_assoc( $query ) ):
$b_id = $row[ bid ];
?>
<div class= notes >
<?php
// query the db for notes associated with business... return notes texts and notes dates
$notesQuery = mysql_query("SELECT business_id, notes, messageDate FROM notes WHERE notes.business_id = $b_id ORDER BY messageDate");
while( $NoteRow = mysql_fetch_assoc( $notesQuery ) ) {
extract($NoteRow);
echo "$notes<br/><span class= noteDate >$messageDate</span><br />";
} // end while$notesQuery
?>
<!-- this is where i would like jQuery to return the new note -->
<div id="noteReturn<?php echo $b_id; ?>"></div>
<!-- begin note form -->
<form name="noteForm" action="notesProcess.php" method="post">
<input type="text" name="note" />
<input type="hidden" value="<?php echo $b_id ?>" name="bid" />
<input type="submit" class="button" value="Send" />
</form>
</div> <!-- end div.notes -->
<?php
endwhile;
?>
<!-- /////////////////////////////////////////////////////
The page that the form submits to is this (notesProcess.php):
///////////////////////////////////////////////////// -->
<?php
$note = $_POST[ note ];
$id = $_POST[ bid ];
$sql = "INSERT INTO notes (business_id, notes) VALUES ( $id , $note )";
$result = mysql_query( $sql );
if( $result ) {
echo " $note"; }
?>