begin process at 2012 02 11 17:58:25
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Javascript / DHTML

 > ONGLET GÉNÉRÉ EN PHP ET REQUETE AJAX

ONGLET GÉNÉRÉ EN PHP ET REQUETE AJAX


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Javascript / DHTML Classé sous :onglet, tab, AJAX, xmlhttprequest, dynamique Niveau :Débutant Date de création :29/08/2008 Date de mise à jour :12/09/2008 16:34:18 Vu / téléchargé :15 058 / 1 505

Auteur : djmmix

Ecrire un message privé
Site perso
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
script qui génère des onglets,le contenu et les titres des onglets sont géré par MySQL,le script AJAX fait une requete sur une page PHP qui va chercher les donnée sur la BDD.

j'ai commenter la source  en espérant que sa puisse aider :)

Source

  • <?php
  • include('./connection/connection.php');//inclu les paramètres de connection à la base de donnée
  • if (!$connect)//si pas connecter a la base de donnée déclenche une érreur SQL
  • die("Erreur de connection à MySQL: " . mysql_error());
  • if (!mysql_select_db($database_connect, $connect))//si base non trouvée déclenche une erreur SQL
  • die("Erreur base de donnée non trouvée: " . mysql_error());
  • ?>
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  • <link href="./onglet.css" rel="stylesheet" type="text/css" />
  • <?php
  • echo "<script type=\"text/javascript\">\n";//génération du des paramètre pour le javascript qui seron utilisé par le script AJAX
  • echo "<!--\n";
  • $requete='SELECT * FROM multionglet';//sélectionne la table pour la gestion du contenu
  • $requeteongletjs= mysql_query($requete, $connect) or die("Erreur table non trouvée:".mysql_error());//déclenche une erreur si la table n'est pas trouvé
  • $ongletjs = mysql_fetch_object($requeteongletjs);//sélectionne le premier enregistrement de la table
  • $tabonglet=array(0 => array("onglet"=>$ongletjs->onglet,"titre"=>$ongletjs->titre,"contenu"=>$ongletjs->contenu));//stock dans un tableau a 2 dimension les donnée de la table
  • $compteur=1;//variable qui stock le nombre d'onglet a afficher
  • $valeur="'".$ongletjs->onglet."'";//stock dans la variable l'ID des onglets
  • while ($ongletjs = mysql_fetch_object($requeteongletjs))//requete pour lister toute la table
  • {
  • $valeur=$valeur.",'".$ongletjs->onglet."'";
  • $tabonglet[]=array("onglet"=>$ongletjs->onglet,"titre"=>$ongletjs->titre,"contenu"=>$ongletjs->contenu);
  • $compteur++;
  • }
  • echo"compteur=".$compteur.";\n";//variable transformer en javascript pour utilisation avec le script AJAX pour avoir le nombre d'onglet
  • echo "tabu=[".$valeur."];\n";//variable qui va stocker toute les ID transmit pour le script AJAX
  • echo "//-->\n";
  • echo "</script>\n";
  • ?>
  • <script type="text/javascript" src="onglet.js"></script>
  • <title>onglet</title>
  • </head>
  • <body>
  • <table border="0" width="400" align="center">
  • <tr>
  • <td>
  • <?php
  • echo " <ol id=\"tabnav\">\n";
  • echo " <li><a href=\"javascript:onglet('".$tabonglet[0]["onglet"]."');\" class=\"active\" id=\"".$tabonglet[0]["onglet"]."\">".$tabonglet[0]["titre"]."</a></li>\n";//génère l'onglet actif
  • $i=1;
  • while ($i<$compteur)
  • {
  • echo " <li><a href=\"javascript:onglet('".$tabonglet[$i]["onglet"]."');\" id=\"".$tabonglet[$i]["onglet"]."\">".$tabonglet[$i]["titre"]."</a></li>\n";//génère les autres onglets
  • $i++;
  • }
  • echo " </ol>\n";
  • echo " <div id=\"contenu\" class=\"tabtour\"><br/>".$tabonglet[0]["contenu"]."<br/><br/></div>\n";//génère le div qui va contenir les données de l'onglet
  • ?>
  • </td>
  • </tr>
  • </table>
  • </body>
  • </html>
  • <?php
  • mysql_close($connect);//fermeture de la connection SQL
  • ?>
<?php
include('./connection/connection.php');//inclu les paramètres de connection à la base de donnée
    if (!$connect)//si pas connecter a la base de donnée déclenche une érreur SQL
       die("Erreur de connection à MySQL: " . mysql_error());	   
if (!mysql_select_db($database_connect, $connect))//si base non trouvée déclenche une erreur SQL
       die("Erreur base de donnée non trouvée: " . mysql_error());
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="./onglet.css" rel="stylesheet" type="text/css" />
<?php
echo "<script type=\"text/javascript\">\n";//génération du des paramètre pour le javascript qui seron utilisé par le script AJAX
echo "<!--\n";
$requete='SELECT * FROM multionglet';//sélectionne la table pour la gestion du contenu
$requeteongletjs= mysql_query($requete, $connect) or die("Erreur table non trouvée:".mysql_error());//déclenche une erreur si la table n'est pas trouvé
$ongletjs = mysql_fetch_object($requeteongletjs);//sélectionne le premier enregistrement de la table
$tabonglet=array(0 => array("onglet"=>$ongletjs->onglet,"titre"=>$ongletjs->titre,"contenu"=>$ongletjs->contenu));//stock dans un tableau a 2 dimension les donnée de la table
$compteur=1;//variable qui stock le nombre d'onglet a afficher
$valeur="'".$ongletjs->onglet."'";//stock dans la variable l'ID des onglets
while ($ongletjs = mysql_fetch_object($requeteongletjs))//requete pour lister toute la table
{
	$valeur=$valeur.",'".$ongletjs->onglet."'";
	$tabonglet[]=array("onglet"=>$ongletjs->onglet,"titre"=>$ongletjs->titre,"contenu"=>$ongletjs->contenu);
	$compteur++;
}
echo"compteur=".$compteur.";\n";//variable transformer en javascript pour utilisation avec le script AJAX pour avoir le nombre d'onglet
echo "tabu=[".$valeur."];\n";//variable qui va stocker toute les ID transmit pour le script AJAX
echo "//-->\n";
echo "</script>\n";
?>
<script type="text/javascript" src="onglet.js"></script>
<title>onglet</title>
</head>
<body>
<table border="0" width="400" align="center">
  <tr>
  	<td>
<?php

echo "		<ol id=\"tabnav\">\n";
echo "			<li><a href=\"javascript:onglet('".$tabonglet[0]["onglet"]."');\" class=\"active\" id=\"".$tabonglet[0]["onglet"]."\">".$tabonglet[0]["titre"]."</a></li>\n";//génère l'onglet actif
$i=1;
	while ($i<$compteur) 
		{
					echo "			<li><a href=\"javascript:onglet('".$tabonglet[$i]["onglet"]."');\" id=\"".$tabonglet[$i]["onglet"]."\">".$tabonglet[$i]["titre"]."</a></li>\n";//génère les autres onglets
					$i++;
		}
echo "		</ol>\n";
echo "		<div id=\"contenu\" class=\"tabtour\"><br/>".$tabonglet[0]["contenu"]."<br/><br/></div>\n";//génère le div qui va contenir les données de l'onglet
?>
	</td>
  </tr>
</table>
</body>
</html>
<?php
mysql_close($connect);//fermeture de la connection SQL
?>

 Conclusion

tous est dans le zip,tester sous IE7,firefox 2 et 3,safari sans aucun problème

PS:j'ai vue que sur l'onglet actif en bas a gauche il manque 1 pixel pour je ne c'est trop quel raison je vais essayer de trouver la solution

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

29 août 2008 19:15:27 :
correction du titre :)
29 août 2008 21:33:29 :
correction sur le pixel manquant en bas à gauche (c'était dans la feuille de style :) )
12 septembre 2008 16:33:07 :
mise a jour du code suite au bug rencontrer sous easyphp.
12 septembre 2008 16:34:18 :
Mise a jour du code suite au bug rencontrer sous easyphp

 Sources de la même categorie

Source avec Zip Source avec une capture PHPJSVFORM : DES CLASSES PHP, DES JAVASCRIPTS POUR CRÉER FAC... par synanceia
BOUTON POUR SITE WEB PAYMENT par Tom56340
Source avec Zip Source avec une capture PETIT CLIENT + AJAX + PHP par kiki67100
Source avec Zip Source avec une capture BOÎTE À ONGLETS / MENUS ET SOUS-MENUS / JAVASCRIPT / PHP / D... par Heirem
Source avec Zip Source avec une capture JUKEBOX EN LIGNE par Flachy Joe

 Sources en rapport avec celle ci

Source avec Zip OBJECT 2 JSON par coucou747
Source avec Zip ORGANIGRAMME DYNAMIQUE par lptt320
Source avec Zip Source avec une capture AJAX MAP CREATOR : CARTE INTERACTIVE POUR UN JEU EN PHP & JA... par djine
Source avec Zip Source avec une capture CHAT AJAX par Arto_8000
Source avec Zip Source avec une capture XL AJENDAX : AGENDA EN LIGNE SIMPLE ET RAPIDE ( XMLHTTPREQUE... par xl714

Commentaires et avis

Commentaire de viki53 le 29/08/2008 19:09:55

C'est "onglet généré". ;)

Et pourquoi XML ? J'ai regardé vite fait et j'en vois pas là ...

Commentaire de PHPLizardo le 29/08/2008 19:12:50

Je n'ai pas encore consulté tes sources mais je te remercie d'avoir posté ton projet. Cela m'a donné une bien bonne idée.

Commentaire de djmmix le 29/08/2008 19:14:08

ha oui dans le tag désolé je me suis tromper ^^' et je c'est pas si je peut modifier le titre :'(

Commentaire de djmmix le 29/08/2008 19:16:25

titre et tag modifié suite au remarque de VIKI53

Commentaire de djmmix le 29/08/2008 19:17:21

on est la pour sa PHPLizardo :)

Commentaire de bma1980 le 12/09/2008 12:54:10

Bonjour

en essayant d'exécuter le code j'ai une erreur "Notice: Undefined offset: 3 in c:\program files\easyphp1-8\www\onglet\onglet.php on line 45"
je sais que ce 3 est un index introuvable mais je sais pas comment résoudre.
Merci de m'aider.

Commentaire de djmmix le 12/09/2008 16:30:57

bonjour BMA1980 apparament sous easyphp il fait une boucle while suplémentaire
(je viend e tester sous easyphp 2.0b1) chose etrange mais facilement contournable,alors que sous wamp server il effectue bien le nombre de boucle indiquer (même su mon site distant d'ailleur) donc n'aillaint pas tester sous esayphp je n'avai pas vue ce bug  pour le corrigé va a la boucle while -avant:while ($tabonglet[$i])  -après:while ($i<$compteur)
et la plus de bug sous easyphp :) je vais corrigé ma source  pour evité tout autre bug.

Commentaire de bma1980 le 17/09/2008 14:49:05

Merci DJMMIX,
je viens de contourné le problème chez moi en modifiant la ligne 45 comme suit  "while ($tabonglet[$i] && $i<3 )" et j'ai ajouter un 4ième enregistrement dans la table, je sais que c'est pas une solution mais j'ai plus l'erreur.

Commentaire de djmmix le 17/09/2008 22:52:32

Salut bma1980 ,

au pire retélécharge ma source car j'ai fait les modifications nécessaire pour que même si tu rajoute un onglet dynamiquement que tu ne sois plus laiser par ce problème car la aparament tu ne peu géré que onglet et pas plus alors que le script est pas limiter.

Enfin après tout c'est toi qui vois ^^

Commentaire de calfou le 07/04/2009 09:25:56 9/10

Salut,

Ta source est bien expliqué, j'ai eu aucun mal à l'adapter à mon site et je voulais juste te dire merci pour cette source. Après quelques modifs, chacun des onglets peut avoir une autre fonction que de donner ce qu'il y a dans la table multionglet.

Exemple :
- Onglet 1 -> recup du texte dans la table multionglet
- Onglet 2 -> recup des derniers commentaires dans ma table commentaires
- Onglet 3 -> recup des derniers articles
ect.

Franchement merci pour la source

Ah oui, pourquoi écris tu <br/> au lieu de <br />?

Commentaire de djmmix le 19/05/2009 16:15:08

salut CALFOU,

merci pour cet encouragement, bien sur on peut adapter le contenu suivant ce qu'on a envi, moi j'ai donné une petite base de donnée a titre d'exemple mais comme dit précédément on peut tres bien l'adapter au besoin ;)

pour <br/> question d'habitude et sa ne change en rien la validation XHTML 1.0 transitional du W3C (oui j'ai testé sa validité sur WC ^^ )

Commentaire de djmmix le 19/05/2009 16:16:52

W3C pas WC pardon,
si les admins peuvent modifier sa merci ^^'

Commentaire de arauch le 13/09/2009 12:39:02

Bonjour,
votre source est parfait. je suis débutant, je parviens a inclure du html mais puis-je inclure dans un onglet une liste ecrite en php ? j'ai essayé mais le php n'est pas interprété. Quelqu'un peut-il me renseigner ?  merci d'avance.alain

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

AJAX PHP send var [ par cedriclomb ] Bonjour,Bon la j'y pige que couik !Alors voila le problème, je cherche a envoyer un fomulaire à PHP avec AJAX et une méthode POST, j'ai fait des reche onglet dynamique!!!!!!!!!!! [ par hicham_899 ] bonjour j'ai entrain de chercher comment faire un page web qui contient des onglets(comme site de fnac) dynamique sachant que l' administrateur de sit Pb de sécurité avec Ajax et XMLHttpRequest [ par cz1702 ] Bonjour &#224; tous,est il possible d'ouvrir une page sur un autre domaine que celui du site en cours avec XMLHttpRequest (sans contraindre l'utilisat XmlHttpRequest (AJAX) [ par BenXbox ] Salut à tous, Je cherche à actualiser une page avec le XmlHttpRequest(AJAX) toutes les 20 secondes. Cette page s'appel EnLigne.php Merci d'avance. Menu deroulant dynamique ajax [ par ns_deux ] Bonjour, Je cherche à faire un menu deroulant dynamique qui va interroger ma base mysql en temps réel. J'aimerais que, lorsque je cliques sur mon menu navigation avec ajax [ par speedylol ] bonjour je me demandais si quelqu'un aurais une idée pour changer la fin du script pour naviger avec le centre dans une veuille de style css a la GET Tabealu dynamique [ par Spyofdeath ] Bonjour à tous !Je suis nouveau ici et je doit dire que ce site m'aide bcp !!!Mais là j'ai un gros problème, impossible de trouver une source correct Insertion et suppression dans un tableau multi-dimension [ par baallrog ] Bonjour à tous! Voilà jai un petit problème en php : j'ai un tableau à deux dimension donc je voudrai ssupprimer et/ou insérer des lignes ! voici mon class et session [ par gabs77 ] slt, j'ai un pb g une page (classe.php) qui possede toutes les fonctions appartenant a une classe cartet g une page qui construit la classe (ajouter.p combobox dynamique [ par anaa21 ] Bonjour à tous, je suis entrain de concevoir une application en php et  j'ai besoind'un scriptqui me permet d'afficher la catégorie du produit sélecti


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,607 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales