web-dev-qa-db-fra.com

Rafraîchissement du module / div lors de la soumission du formulaire [sans rechargement de page]

J'ai ce formulaire de recherche simple à l'intérieur d'un module personnalisé.

HTML FORM:

<div id="search-form">
<form action="" method="post">
<input type="text" name="roll_no">
<input type="submit" name="submit">
</form>
</div>

PHP:

if(isset($_POST['submit']))
{

// getting text from HTML text box

$roll_no = $_POST['roll_no'];

// executing MySql query to fetch a particular record

$query = $db->getQuery(true);
$query->select('name')
       ->from($db->quoteName('students'))
       ->where($db->quoteName('student_id') . " = " . $db->quote($roll_no));

$db->setQuery($query);
$result = $db->loadResult();
$row = $db->loadrow();

echo $row['0'];

}

Cela fonctionne parfaitement, mais rafraîchit toute la page. Puis-je faire en sorte que seulement actualiser ce module particulier (élément div).

L'aide serait appréciée.

1
saibbyweb

Pour réaliser ce que vous voulez, vous ne pouvez pas soumettre le formulaire.

Vous devez utiliser un appel ajax.

voir la documentation jQuery.ajax

Obtenez une réponse et modifiez le DOM afin de refléter cette réponse.

Voici un bel exemple pour le faire ici:

https://www.ostraining.com/blog/joomla/search-ajax/

2
Piero Marsilio