Bonjours chers ami programmeur !
J'ai récemment tomber sur un très jolie script facile et simple d'usage pour crée un "show more" de résultat mysql. Tout fonctionne bien mais j'ai 2 petite question a propo de ce script si vous voudriez bien m'aidez je vous en serais très reconnaissant !
Voici le lien du créateur du script : http://www.9lessons.info/2009/12/twitter-style-load-more-results-with.html
Je vais vous poster le code ici pour vous faciliter la tache il est assez léger.
code javascript :
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/
libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
$(function()
{
$('.more').live("click",function()
{
var ID = $(this).attr("id");
if(ID)
{
$("#more"+ID).html('<img src="moreajax.gif" />');
$.ajax({
type: "POST",
url: "ajax_more.php",
data: "lastmsg="+ ID,
cache: false,
success: function(html){
$("ol#updates").append(html);
$("#more"+ID).remove(); // removing old more button
}
});
}
else
{
$(".morebox").html('The End');// no results
}
return false;
});
});
</script>
ou on veux apparaitre les données mysql :
<div id='container'>
<ol class="timeline" id="updates">
<?php
include('config.php');
$sql=mysql_query("select * from messages ORDER BY msg_id DESC LIMIT 9");
while($row=mysql_fetch_array($sql))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php } ?>
</ol>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" class="more" id="<?php echo $msg_id; ?>">more</a>
</div>
</div>
le ajax_more.php :
<?php
include("config.php");
if(isSet($_POST['lastmsg']))
{
$lastmsg=$_POST['lastmsg'];
$lastmsg=mysql_real_escape_string($lastmsg);
$result=mysql_query("select * from messages where msg_id<'$lastmsg' order by msg_id desc limit 9");
while($row=mysql_fetch_array($result))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php
}
?>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" id="<?php echo $msg_id; ?>" class="more">more</a>
</div>
<?php
}
?>
Ma question est la suivante : J'aimerais pouvoir ajouter des variables dans le ajax_more.php comme celle ci : $lastmsg=$_POST['lastmsg'];
Pour ensuite ajouter des conditions comme cela : $result=mysql_query("select * from messages where msg_id<'$lastmsg' AND POST2='post2' OR POST3='post3' order by msg_id desc limit 9");
J'ai lue sur les commentaires que plusieur personne se demandais comment faire pour poster plusieur variable dans le ajax_more.php et aussi sur les questions de sécurités.
Je vous remercie d'avance pour votre aide !
J'ai récemment tomber sur un très jolie script facile et simple d'usage pour crée un "show more" de résultat mysql. Tout fonctionne bien mais j'ai 2 petite question a propo de ce script si vous voudriez bien m'aidez je vous en serais très reconnaissant !
Voici le lien du créateur du script : http://www.9lessons.info/2009/12/twitter-style-load-more-results-with.html
Je vais vous poster le code ici pour vous faciliter la tache il est assez léger.
code javascript :
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/
libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
$(function()
{
$('.more').live("click",function()
{
var ID = $(this).attr("id");
if(ID)
{
$("#more"+ID).html('<img src="moreajax.gif" />');
$.ajax({
type: "POST",
url: "ajax_more.php",
data: "lastmsg="+ ID,
cache: false,
success: function(html){
$("ol#updates").append(html);
$("#more"+ID).remove(); // removing old more button
}
});
}
else
{
$(".morebox").html('The End');// no results
}
return false;
});
});
</script>
ou on veux apparaitre les données mysql :
<div id='container'>
<ol class="timeline" id="updates">
<?php
include('config.php');
$sql=mysql_query("select * from messages ORDER BY msg_id DESC LIMIT 9");
while($row=mysql_fetch_array($sql))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php } ?>
</ol>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" class="more" id="<?php echo $msg_id; ?>">more</a>
</div>
</div>
le ajax_more.php :
<?php
include("config.php");
if(isSet($_POST['lastmsg']))
{
$lastmsg=$_POST['lastmsg'];
$lastmsg=mysql_real_escape_string($lastmsg);
$result=mysql_query("select * from messages where msg_id<'$lastmsg' order by msg_id desc limit 9");
while($row=mysql_fetch_array($result))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php
}
?>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" id="<?php echo $msg_id; ?>" class="more">more</a>
</div>
<?php
}
?>
Ma question est la suivante : J'aimerais pouvoir ajouter des variables dans le ajax_more.php comme celle ci : $lastmsg=$_POST['lastmsg'];
Pour ensuite ajouter des conditions comme cela : $result=mysql_query("select * from messages where msg_id<'$lastmsg' AND POST2='post2' OR POST3='post3' order by msg_id desc limit 9");
J'ai lue sur les commentaires que plusieur personne se demandais comment faire pour poster plusieur variable dans le ajax_more.php et aussi sur les questions de sécurités.
Je vous remercie d'avance pour votre aide !