Forum Clubic

HTML cycle chargement BD / modif / rechargement BD

Bonjour,

J’ai une page HTML qui à l’initialisation charge une BD MySQL dans une liste. :slight_smile:
Si l’utilisateur créé un nouvel enregistrement ou modifie un enregistrement on quitte la page HTML pour aller sur le serveur via une page PHP qui modifie la BD suivant les indications de l’utilisateur. La BD mise à jour, on retourne à la page HTML initiale qui recharge la BD complète… :super:

La BD étant importante, le chargement est assez long.:o(
Donc le cycle complet chargement initial/modification/Rechargement est vraiment très long et carrément insupportable dans le cas d’une saisie de nombreux enregistrement et que les cycles s’enchainent.:na:

L’idéal serai :

Saisie des nouvelle données - Ajout à la liste HTML - Appel de la routine PHP - Retour à la page HTML SANS rechargement.:bounce:

Seulement voila comment depuis la page PHP revenir à la page HTML sans provoquer l’initialisation de la page ???:confused:

Zavez une idée ?? :jap:

Tu peux utiliser le JavaScript pour faire des appels HTTP (à tes scripts PHP), lire la réponse et modifier l’élément HTML (la liste).

Merci Raynor de participer à ma reflexion.:jap:
Je n’ai pas de PB pour remplir la liste en JS.
Mon pb est que la liste est chargée depuis la BD lors de l’initialisation.
Si une fiche est créée ou modifiée, elle est executée par une page PHP.
Le retour vers la page HTML initiale se fait par un header dans le script PHP.
La conséquence est que la phase d’iinitialmisation de la HTML est relancée.:na:

Comment revenir à la page HTML SANS provoquer le rechargement de la liste depuis la BD ???:confused:


<table>
<!-- tes données -->
</table>

<form target="#fram" method="post">
  <!-- Quand tu valide, ca charge la page dans l'iFrame, à toi de géré les modifications en live sur ta table de donnée -->
  <!-- biensur, c'est aussi possible de faire la même chose en aJax -->
</form>

<iframe id="fram" style="display: none;"></iframe>

Edité le 21/10/2009 à 02:15

Mais la méthode que je te propose utilise des scripts PHP différents pour la création/affichage de ton formulaire et pour l’ajout/modification des “fiches” dans la base de données.

Voir ce petit schéma (le forum de Clubic n’est pas capable de formater/afficher ce genre de texte)
Edité le 21/10/2009 à 10:21

Un grand merci à vous deux pour cette aide précieuse.:jap:
Je vais creuser toutes ces infos… Suivre ces nouvelles pistes qui me semble très prometteuses !:smiley:

Bon, je galère pas mal, je tourne autour du problème sans vraiment parvenir à le résoudre.:heink:
La solution de Raynor :jap: est celle que j’ai déjà réalisé: script affichage/création/modification séparés.
La proposition de Pyro :jap: m’a permis une meilleure intégration.
Mais le problème reste entier: :frown:

La page Main.htm charge la BD avec l’évènement window.onload.
L’utilisateur crée ou modifie un élément de la BD = chargement de la page formulaire, vérification des DATA, appel du script php d’enregistrement. Mon problème se pose maintenant : retour à la page html avec la définition du header(‘Location: Main.htm’);
Ce qui provoque le window.onload et le rechargement…:na:

Quelque soit la technique, je ne comprend pas comment quiter le PHP, revenir à la main.php sans window.onload…:pt1cable:

Z’avez une idée… par pitié ??? :etonne2:

Vraiment aucune idée !!???:pt1cable:

As-tu, dans tes recherches, vu passé des documents concernant l’AJAX ?

Ajax… La guerre de Troie, Achille et Ulysse… Je vois bien, mais quel rapport avec le HTML ? :pt1cable:
:kaola::kaola::kaola:
Sans rire, comme cela ce voit, je débute dans la programmation html.
Alors apprendre de front le HTML, le Javascript, PHP et MySQL, bien comprendre le fonctionnement Coté client, coté serveur…:heink: je trouvais déjà ça assez ardu, alors l’AJAX, RUBY, Flash et compagnie ça me semblais de la gourmandise ! :sarcastic:

Il vrai que j’ai épuisé les nombreux exemples, tuto, et autres forum qui traitent du sujet “les formulaires MySQL” qui tournent toujours de la même façon : formulaire, contrôle, enregistrement sans traiter du retour…:na:

J’espérais qu’une solution sans AJAX soit possible !
Edité le 02/11/2009 à 20:53

J’ai commencé la lecture d’un tuto AJAX, ça semble coller à ma demande !!!:oui:
J’étudie ça !:super:

ça se confirme, AJAX est LA solution… Efficace, propre, rapide… Nickel ! :clap: