Comment afficher les données de la base de données sans rafraichissement de la page à l'aide de jquery, PHP
Est-il de toute façon à charger les nouvelles lignes insérées à la base de données sans rafraichissement de la page à l'aide de jQuery? Je suis en mesure d'envoyer les données à la base de données sans actualisation à l'aide de jquery, mais je suis coincé à montrer que des données sans rafraichissement de la page. Comment puis-je afficher les données de la table sans rafraichissement de la page et la faire apparaître sous la table dans index.php que j'ai pour afficher les données récupérées? Grâce
C'est mon index.php
<html>
<head>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#submit').click(function(){
$.ajax({
type: "POST",
url: 'send.php',
data: "user=" + $('#user').val() + "&comment=" + $('#comment').val(),
success: function(data){
$('input[type=text]').val('')
$('#status').html(data);
}
});
});
});
</script>
</head>
<body>
<div>
<input type="text" name="user" id="user">
<input type="text" name="comment" id="comment">
<input name="submit" type="submit" id="submit">
<div id="status"></diV>
</div>
<br>
<?php
$con=mysqli_connect("localhost","root","","user");
//Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM comments");
echo "<table width='640' >
<tr>
</tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr >";
echo "<td style='vertical-align:text-top'>" . $row['user'] . "</td>";
echo "<td><br><br><br>" . wordwrap($row['comment'], 90, '<br>',true) . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
Et voici mon send.php qui soumet les données à la table.
<?php
$mysqli = new mysqli("localhost", "root", "", "user");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}
$username = $_POST["user"];
$comment = nl2br($_POST['comment']);
$stmt = $mysqli->prepare("INSERT INTO comments (user, comment) VALUES (?,?)");
$stmt->bind_param('ss', $username, $comment);
$stmt->execute();
echo"comment posted successfully";
?>
- jQuery load()
- Cochez la case "liées" sidebar -- il y a beaucoup de ajax exemples. Votre meilleur pari est de comprendre comment ils fonctionnent, de sorte que vous pouvez appliquer les mêmes principes à votre projet.
Vous devez vous connecter pour publier un commentaire.
Ceci est un bref exemple pour l'extraction de données à partir d'une base de données mysql à l'aide de JQuery AJAX et php. AJAX JQuery nous permet de mettre à jour le contenu d'une page sans rechargement de la page:
http://openenergymonitor.org/emon/node/107
http://viralpatel.net/blogs/jquery-ajax-tutorial-example-ajax-jquery-development/
faire send.php vous retourner les données dont vous avez besoin pour charger la ligne nouvellement insérée.
Disons que vous avez inséré un commentaire qui dit "Hello world". Si rien ne se passe mal, send.php pourrait, par exemple, echo le contenu du commentaire ("Bonjour tout le monde dans ce cas), et vous pouvez faire usage de que la réussite de la fonction (à partir des données de paramètre).
regarder la première réponse cette question, pourrait être utile.
Vous devez ajouter le nouveau commentaire à la table avec jquery dans le succès fonction de rappel de votre requête ajax.
D'ajouter:
Garder la chose que vous voulez ajouter en une seule ligne de code et assurez-vous de ne pas effacer les valeurs de #l'utilisateur et #commentaire avant de l'inclure à l'ajout de la chaîne.