0
时,我有一个问题/问题得到ID网址...我有这3个文件:如何使用AJAX重定向URL
home.php
<?php include_once('db_includes/db_conx.php'); ?>
<?php
$sql = "SELECT * FROM posts";
$query = mysqli_query($db_conx, $sql);
while($post = mysqli_fetch_array($query)) {
$titlos = $post['titlos'];
$eikona = $post['eikona'];
$keimeno = $post['keimeno'];
$author = $post['author'];
$postdate = $post['postdate'];
$postid = $post['postid'];
echo '<div class="posts_container">
<div class="post_container">
<div class="bg_title_posts_container">
<h1><a href="#">'.$titlos.'</a></h1>
</div>
<div class="bg_main_posts_container">
<div class="post_img">
<img src="images/'.$eikona.'.jpg"> <!-- b -->
</div>
<div class="post_text">
<p>'.$keimeno.'</p>
</div>
</div>
<div class="posts_footer">
<div class="posts_footer_content">Posted by <p>'.$author.'</p></div>
<div class="posts_footer_content">on '.$postdate.'</div> <!-- Nov - 18 - 2013 -->
<div class="posts_footer_content">10 Comments</div>
<div class="posts_footer_content pst_foot_cont_helper">***<a href="postreadmore.php?id='.$postid.'">***Read more <span>>></span></a></div>
</div>
</div>
</div>';
}
?>
postreadmore.php
<?php include_once('db_includes/db_conx.php'); ?>
<!-- HEADER -->
<?php include_once('static_temps/header.php'); ?>
<!-- END HEADER -->
<?php
***$idpost = $_GET['id'];***
$sql = "SELECT * FROM posts WHERE postid = '$idpost'"; var_dump($sql);
$query = mysqli_query($db_conx, $sql);
$post = mysqli_fetch_array($query);
$titlos = $post['titlos'];
$eikona = $post['eikona'];
$keimeno = $post['keimeno'];
?>
<div class="posts_container">
<div class="post_container">
<div class="bg_title_posts_container">
<h1><a href="#"><?php echo $titlos ?></a></h1>
</div>
<div class="bg_main_posts_container bg_main_posts_container_readmore">
<div class="post_text post_text_readmmore post_text_static_height_readmore">
<p>
<span class="post_img_readmore"><img src="images/<?php echo $post['eikona']; ?>.jpg"></span>
<?php echo $post['keimeno']; ?>
</p>
</div>
</div>
</div>
</div>
<div class="comment_container">
<div class="comments_sum">
10 Comments
</div>
<div class="as">
<?php
$sql = "SELECT * FROM comments WHERE postid = '$idpost'";
$query = mysqli_query($db_conx, $sql);
while($post = mysqli_fetch_array($query)) {
$authorcom = $post['com_auth'];
$comment = $post['com_body'];
$datetimecom = $post['com_date'];
//for ($post=0; $post < count($post); $post++){
echo '<div class="comments">
<div class="author">
<span>'.$authorcom.'</span> says:
</div>
<div class="when_com_posted">
'.$datetimecom.' <!-- December 11, 2010 at 7:18 AM -->
</div>
<div class="comment_body">
'.$comment.'
</div>
</div>';
} //}
?>
</div>
</div>
<div class="leave_com_title">
Leave a comment
</div>
<div class="sent_comment">
<div class="com">
</div>
<div class="comment-block">
</div>
<form id="form" class="ajax" accept-charset="utf-8" name="form_comment" method="post">
<input type="hidden" name="comid" value="1">
<label id="labelfname" for="first_name">
Name:<span>*</span>
</label>
<input id="first_name" type="text" name="first_name" size="20" value="" type="text" required>
<label id="labelemail" for="email">
Email:<span>*</span>
</label>
<input id="email" type="email" name="email" size="20" value="" type="text" required>
<label id="labelcomment" for="comments">
Comments:<span>*</span>
</label>
<textarea id="comments" name="comments" value="" cols="40" rows="6" required></textarea>
<!--<button class="submit_button black" type="submit" name="Submit">
Submit
</button>-->
<input class="submit_button black" id="submit" type="submit" value="Submit" />
<button class="reset_button black" type="reset" name="reset">
Reset
</button>
</form>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
var form = $('form');
var submit = $('#submit');
form.on('submit', function(e) {
// prevent default action
e.preventDefault();
// send ajax request
$.ajax({
url: 'ajax.php',
type: 'POST',
cache: false,
data: form.serialize(), //form serizlize data
beforeSend: function(){
// change submit button value text and disabled it
submit.val('Submitting...').attr('disabled', 'disabled');
},
success: function(data){
var item = $(data).hide().fadeIn(800);
$('.as').append(item);
// reset form and button
form.trigger('reset');
submit.val('Submit').removeAttr('disabled');
},
error: function(e){
alert(e);
}
});
});
});
</script>
和ajax.php
<?php
// code will run if request through ajax
if (isset($_SERVER['HTTP_X_REQUESTED_WITH'])):
include('db_includes/db_conx.php');
// connecting to db
if (!empty($_POST['first_name']) && !empty($_POST['email']) && !empty($_POST['comments']) && !empty($_POST['comid'])) {
// preventing sql injection
$name = mysqli_real_escape_string($db_conx,$_POST['first_name']);
$mail = mysqli_real_escape_string($db_conx,$_POST['email']);
$comment = mysqli_real_escape_string($db_conx,$_POST['comments']);
$postId = mysqli_real_escape_string($db_conx,$_POST['comid']);
// insert new comment into comment table
***$idpost = $_GET['id'];***
$sql22 = "SELECT * FROM posts WHERE postid = '$idpost'";
$query22 = mysqli_query($db_conx, $sql22);
while($post22 = mysqli_fetch_array($query22)) {
$postid22= $post22['postid'];
}
$sql9="INSERT INTO comments (com_id,postid,com_auth,com_body,com_date)
VALUES
('','','".$name."','".$comment."',now())";
$query9 = mysqli_query($db_conx, $sql9);
$sql15 = "SELECT * FROM comments";
$query15 = mysqli_query($db_conx, $sql15);
while($post15 = mysqli_fetch_array($query15)) {
$postid15 = $post15['com_id'];
}
$sql4="INSERT INTO allinfocom (allinfocom_id,allinfocom_auth,allinfocom_email,allinfocom_body,com_id,allinfocom_date)
VALUES
('','".$name."','".$mail."','".$comment."','".$postid15."',now())";
$query4 = mysqli_query($db_conx, $sql4);
} ?>
我的问题是,在ajax.php我把这个代码$ idpost = $ _GET ['id'];我想从home.php的网址ID,并说未申报......事情是在postreadmore.php,这是完美的......但我想要它和在ajax.php ...我明白,问题是该ajax.php从jquery脚本调用,不能采取ID ...我想问是否有办法采取它,我不知道...我已经搜查,但我还没有找到任何类似的东西!我已经放了一些带有3个星号的部分,以便尽可能简化。对于所有这些代码,请仔细阅读!提前致谢!
你可以追加数据到ajax中的数据吗?或者你可以把url作为ajax.php?id = 1 – Bhadra
我试过ajax.php?id = 1,但我希望它动态获取id。 –