Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/01/2011, 01h32   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2009
Messages : 47
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 47
Points : 10
Points : 10
Par défaut Fancybox et pagination

Bonjour j'essaie en vain de mettre dans une pagination d'articles un lien dans chaque article envoyant ouvrant une iframe grâce à fancybox.

Le lien fonctionne très bien dans mon code principal (pour le tester) mais une fois dans les articles, rien ne va plus, cela ouvre bien la page mais pas en fancybox

page : index-test.php

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
 
<!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" xml:lang="en" lang="en">
<head>
<title><?php echo $titre." - ".constant("SITEDESC".$languepage); ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="Lull Agency, site internet à Dijon" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<link rel="shortcut icon" type="image/x-icon" href="../css/dropdown/themes/vimeo.com/images/favicon.ico" />
<link href="../css/dropdown/themes/vimeo.com/helper.css" media="screen" rel="stylesheet" type="text/css" />
<!-- Beginning of compulsory code below -->
<link href="../css/dropdown/dropdown.css" media="screen" rel="stylesheet" type="text/css" />
<link href="../css/dropdown/themes/vimeo.com/default.advanced.css" media="screen" rel="stylesheet" type="text/css" />
<link href="../css/style<?php echo $languepage; ?>.css" media="screen" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
	<script>
		!window.jQuery && document.write('<script src="../js/jquery-1.4.3.min.js"><\/script>');
	</script>
<link rel="stylesheet" href="../css/load_posts.css" type="text/css" media="screen" />
 
<script type="text/javascript">
            $(document).ready(function(){
                function loading_show(){
                    $('#loading').html("<img src='../css/images/loading.gif'/>").fadeIn('fast');
                }
                function loading_hide(){
                    $('#loading').fadeOut('fast');
                }                
                function loadData(page){
                    loading_show();                    
                    $.ajax
                    ({
                        type: "POST",
                        url: "data_posts.php",
                        data: "page="+page,
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                loading_hide();
                                $("#container").html(msg);
                            });
                        }
                    });
                }
                loadData(1);  // For first time page load default results
                $('#container .pagination li.active').live('click',function(){
                    var page = $(this).attr('p');
                    loadData(page);
 
                });           
                $('#go_btn').live('click',function(){
                    var page = parseInt($('.goto').val());
                    var no_of_pages = parseInt($('.total').attr('a'));
                    if(page != 0 && page <= no_of_pages){
                        loadData(page);
                    }else{
                        alert('Enter a PAGE between 1 and '+no_of_pages);
                        $('.goto').val("").focus();
                        return false;
                    }
 
                });
            });
        </script>
<script type="text/javascript" src="../fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
<script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
<script type="text/javascript">
		$(document).ready(function() {
 
			/*
			*   Examples - various
			*/
 
			$("#various1").fancybox({
				'titlePosition'		: 'inside',
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
 
			$("#various2").fancybox();
 
			$("#various3").fancybox({
				'width'				: '75%',
				'height'			: '75%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe'
			});
 
			$("#various4").fancybox({
				'padding'			: 0,
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
		});
	</script>
<!--[if lte IE 7]>
<script type="text/javascript" src="../js/jquery/jquery.js"></script>
<script type="text/javascript" src="../js/jquery/jquery.dropdown.js"></script>
<![endif]-->
<!-- / END -->
 
</head>
<body>
<div id="loading"></div>
<div id="container">
<div class="data"></div>
<div class="pagination"></div>
</div>
les div data et pagination sont remplis par la page data_posts.php qui est appelé dans la fonction load_data ci-dessus (en début de script)

et voici la page data_posts

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
 
$page = $_POST['page'];
$cur_page = $page;
$page -= 1;
$per_page = 2;
$previous_btn = true;
$next_btn = true;
$first_btn = true;
$last_btn = true;
$start = $page * $per_page;
 
if(!isset($_GET['id'])OR !is_numeric($_GET['id'])){ $idpage=HOMEDEFAULT; }
else{$idpage=$_GET['id'];}
 
///////////////////////////////////////POSTS//////////////////////////////////////////////////////
 
///////////////////////////////////////SELECT CONTENU POST////////////////////////////////////
 
$sqlposts = "SELECT * FROM posts  WHERE idrub=".$idpage." AND languepost='".$languepage."' ORDER BY ordre ASC, date DESC LIMIT ".$start.", ".$per_page."";
$sthposts = $dbh->query($sqlposts);
$posts = $sthposts->fetchAll();
$nbreposts = count($posts);
 
////si pas de resultat dans cette langue on cherche dans la langue par défault//
if($nbreposts==0){	
	$sqlposts = "SELECT * FROM posts, langues  WHERE langues.langues=posts.languepost AND posts.idrub=".$idpage." AND langues.statut=0 ORDER BY posts.ordre ASC, posts.date DESC LIMIT ".$start.", ".$per_page."";
	$sthposts = $dbh->query($sqlposts);
	$posts = $sthposts->fetchAll();
	$nbreposts = count($posts);
}
 
 
////////////////////////pour pagination count/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$sqlposts2 = "SELECT * FROM posts  WHERE idrub=".$idpage." AND languepost='".$languepage."' ORDER BY ordre ASC, date DESC";
$sthposts2 = $dbh->query($sqlposts2);
$posts2 = $sthposts2->fetchAll();
}
$count = count($posts2);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
?>
 
<?php
if($nbreposts>0){
	$msg="";
	?>
	<div id="posts">
	<?php
 
	foreach($posts as $row){
	//variables//
										    if($row['photo']!=""){$photoposts="..".$row['photo'];}
										$contenuposts=htmlspecialchars_decode($row['contenu']);
										$titreposts=htmlspecialchars_decode($row['titre']);
										$bonnedate=Datedanslordre($row['date']);
///////////
													?>
													<div class="posts1">
														<div class="bloctitreposts">
															<span class="titreposts">
																<?php $titreposts=raccourcirChaine($titreposts, MAXTITREPOSTS);
																echo $titreposts; ?>
															</span>
															<p class="dateposts"><?php echo DATEPOSTMSG." ".$bonnedate; ?></p>
														</div>
														<div class="contenuposts">
															<?php 
															if($photoposts!=""){ ?>
															<img class="photoposts" src="<?php echo $photoposts; ?>" ?> />
															<?php 
															} 
															$contenuposts2=raccourcirChaine($contenuposts, MAXDESCRIPTIONPOSTS);
 
//////////////// Ce lien la ne marche pas et si je le note tel quel dans le
///////////////  fichier index-test.php ca marche je ne comprends vraiment pas
echo "<a id='various3' href='posts.php?id=".$row['id']."'>".$contenuposts2."</a>";
															?>
														</div>
													</div>
<?php
	}
 
 
/////////calcul des pages CELA FONCTIONNE////////
 
 
$no_of_paginations = ceil($count / $per_page);
 
/* ---------------Calculating the starting and endign values for the loop----------------------------------- */
if ($cur_page >= 7) {
    $start_loop = $cur_page - 3;
    if ($no_of_paginations > $cur_page + 3)
        $end_loop = $cur_page + 3;
    else if ($cur_page <= $no_of_paginations && $cur_page > $no_of_paginations - 6) {
        $start_loop = $no_of_paginations - 6;
        $end_loop = $no_of_paginations;
    } else {
        $end_loop = $no_of_paginations;
    }
} else {
    $start_loop = 1;
    if ($no_of_paginations > 7)
        $end_loop = 7;
    else
        $end_loop = $no_of_paginations;
}
/* ----------------------------------------------------------------------------------------------------------- */
$msg .= "<div class='pagination'><ul>";
 
// FOR ENABLING THE FIRST BUTTON
if ($first_btn && $cur_page > 1) {
    $msg .= "<li p='1' class='active'>First</li>";
} else if ($first_btn) {
    $msg .= "<li p='1' class='inactive'>First</li>";
}
 
// FOR ENABLING THE PREVIOUS BUTTON
if ($previous_btn && $cur_page > 1) {
    $pre = $cur_page - 1;
    $msg .= "<li p='$pre' class='active'>Previous</li>";
} else if ($previous_btn) {
    $msg .= "<li class='inactive'>Previous</li>";
}
for ($i = $start_loop; $i <= $end_loop; $i++) {
 
    if ($cur_page == $i)
        $msg .= "<li p='$i' style='color:#fff;background-color:#006699;' class='active'>{$i}</li>";
    else
        $msg .= "<li p='$i' class='active'>{$i}</li>";
}
 
// TO ENABLE THE NEXT BUTTON
if ($next_btn && $cur_page < $no_of_paginations) {
    $nex = $cur_page + 1;
    $msg .= "<li p='$nex' class='active'>Next</li>";
} else if ($next_btn) {
    $msg .= "<li class='inactive'>Next</li>";
}
 
// TO ENABLE THE END BUTTON
if ($last_btn && $cur_page < $no_of_paginations) {
    $msg .= "<li p='$no_of_paginations' class='active'>Last</li>";
} else if ($last_btn) {
    $msg .= "<li p='$no_of_paginations' class='inactive'>Last</li>";
}
$goto = "<input type='text' class='goto' size='1' style='margin-top:-1px;margin-left:60px;'/><input type='button' id='go_btn' class='go_button' value='Go'/>";
$total_string = "<span class='total' a='$no_of_paginations'>Page <b>" . $cur_page . "</b> of <b>$no_of_paginations</b></span>";
$msg = $msg . "</ul>" . $goto . $total_string . "</div>";  // Content for pagination
echo $msg;
}
?>
Voila si quelqu'un peut m'aider
fabrizti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2011, 01h52   #2
Candidat au titre de Membre du Club
 
Inscription : mai 2009
Messages : 47
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 47
Points : 10
Points : 10
Si cela peut aider j'ai copier le code source de la page afin d'enlever tout ce qui est php. Mais cela inclue évidemment le code de la page data_posts qui est inclue dans la page index-test. Il n'y a donc qu'un code source.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
 
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head>
 
 
<title>Bienvenue sur le site de Plombières les Dijon - Mairie de Plombières les Dijon.</title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta content="Lull Agency, site internet ? Dijon" name="author">
<meta content="" name="keywords">
<meta content="" name="description">
<link href="../css/dropdown/themes/vimeo.com/images/favicon.ico" type="image/x-icon" rel="shortcut icon">
<link type="text/css" rel="stylesheet" media="screen" href="../css/dropdown/themes/vimeo.com/helper.css">
<!-- Beginning of compulsory code below -->
<link type="text/css" rel="stylesheet" media="screen" href="../css/dropdown/dropdown.css">
<link type="text/css" rel="stylesheet" media="screen" href="../css/dropdown/themes/vimeo.com/default.advanced.css">
<link type="text/css" rel="stylesheet" media="screen" href="../css/styleFR.css">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
	<script>
		!window.jQuery &amp;&amp; document.write('&lt;script src="../js/jquery-1.4.3.min.js"&gt;&lt;\/script&gt;');
	</script>
<link media="screen" type="text/css" href="../css/load_posts.css" rel="stylesheet">
 
<script type="text/javascript">
            $(document).ready(function(){
                function loading_show(){
                    $('#loading').html("&lt;img src='../css/images/loading.gif'/&gt;").fadeIn('fast');
                }
                function loading_hide(){
                    $('#loading').fadeOut('fast');
                }                
                function loadData(page){
                    loading_show();                    
                    $.ajax
                    ({
                        type: "POST",
                        url: "data_posts.php",
                        data: "page="+page,
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                loading_hide();
                                $("#container").html(msg);
                            });
                        }
                    });
                }
                loadData(1);  // For first time page load default results
                $('#container .pagination li.active').live('click',function(){
                    var page = $(this).attr('p');
                    loadData(page);
 
                });           
                $('#go_btn').live('click',function(){
                    var page = parseInt($('.goto').val());
                    var no_of_pages = parseInt($('.total').attr('a'));
                    if(page != 0 &amp;&amp; page &lt;= no_of_pages){
                        loadData(page);
                    }else{
                        alert('Enter a PAGE between 1 and '+no_of_pages);
                        $('.goto').val("").focus();
                        return false;
                    }
 
                });
            });
        </script>
<script src="../fancybox/jquery.mousewheel-3.0.4.pack.js" type="text/javascript"></script>
<script src="../fancybox/jquery.fancybox-1.3.4.pack.js" type="text/javascript"></script>
<link media="screen" href="../fancybox/jquery.fancybox-1.3.4.css" type="text/css" rel="stylesheet">
<script type="text/javascript">
		$(document).ready(function() {
 
			/*
			*   Examples - various
			*/
 
			$("#various1").fancybox({
				'titlePosition'		: 'inside',
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
 
			$("#various2").fancybox();
 
			$("#various3").fancybox({
				'width'				: '75%',
				'height'			: '75%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe'
			});
 
			$("#various4").fancybox({
				'padding'			: 0,
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
		});
	</script>
<!--[if lte IE 7]>
<script type="text/javascript" src="../js/jquery/jquery.js"></script>
<script type="text/javascript" src="../js/jquery/jquery.dropdown.js"></script>
<![endif]-->
<!-- / END -->
 
</head>
<body>
	<div id="loading" style="display: none;"><img src="../css/images/loading.gif"></div>
	<div id="container">
	<div id="posts">
 
		<div class="posts1">
 
			<span class="titreposts">Le haut débit arrive</span>
			<p class="dateposts">Posté le 04-01-2011</p></div>
			<div class="contenuposts">
				<img height="105" width="142" src="../documents/images/posts/haut-debit.jpg" class="photoposts">
				<a href="posts.php?id=9" id="various3"><p>Actualité :<br>Internet haut débit arrive à Plombières.<br><br>Cliquer ici pour de plus amples informations.</p></a>
			</div>
		</div>											
 
		<div class="posts2">
 
			<span class="titreposts">Le haut débit arrive</span>
			<p class="dateposts">Posté le 02-01-2011</p></div>
			<div class="contenuposts">
				<img height="105" width="142" src="../documents/images/posts/haut-debit2.jpg" class="photoposts">
				<a href="posts.php?id=10" id="various3"><p>Actualité :<br>dsfdsf df dsf dsf sdf </p></a>
			</div>
 
		</div>					
 
    </div>
<div id="fancybox-tmp"></div><div id="fancybox-loading"><div></div></div><div id="fancybox-overlay"></div><div id="fancybox-wrap"><div id="fancybox-outer"><div id="fancybox-bg-n" class="fancybox-bg"></div><div id="fancybox-bg-ne" class="fancybox-bg"></div><div id="fancybox-bg-e" class="fancybox-bg"></div><div id="fancybox-bg-se" class="fancybox-bg"></div><div id="fancybox-bg-s" class="fancybox-bg"></div><div id="fancybox-bg-sw" class="fancybox-bg"></div><div id="fancybox-bg-w" class="fancybox-bg"></div><div id="fancybox-bg-nw" class="fancybox-bg"></div><div id="fancybox-content"></div><a id="fancybox-close"></a><div id="fancybox-title"></div><a id="fancybox-left" href="javascript:;"><span id="fancybox-left-ico" class="fancy-ico"></span></a><a id="fancybox-right" href="javascript:;"><span id="fancybox-right-ico" class="fancy-ico"></span></a></div></div>
</body>
</html>
 
Toutes les div fancybox a la fin doivent être créée automatiquement car elles ne sont pas dans mon code.
fabrizti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2011, 22h03   #3
Membre du Club
 
Jean Frederic Nault
Inscription : juillet 2010
Messages : 61
Détails du profil
Informations personnelles :
Nom : Jean Frederic Nault

Informations forums :
Inscription : juillet 2010
Messages : 61
Points : 59
Points : 59
Salut Fabrizti,

Le probleme est au niveau javascrips:

je veux essayer d'etre le plus clair possible car, le concept peut être difficile a saisir si mal expliqué

donc en gros il se passe quoi quand tu fait :

Code :
1
2
3
4
5
6
7
8
9
 
$("#various3").fancybox({
				'width'				: '75%',
				'height'			: '75%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe'
			});
La fonction $ de jquery, prend tout les ID #various3 et sur chacun d'eux, effectue la fonction fancybox.

ensuite tu remarquera que tu a mi le code ci-haut a linterieur de :
Code :
1
2
3
4
 
$(document).ready(function() {
/*ici*/
})
note : ready, signifie, une foi que tout le html est ecrit execute ceci...
load veux dire une foi que tout les element sont charger dans le html
execute ceci...
Une petite explication

cependant, dans ta page tu fait appaitre le contenue de #container en ajax, donc quand tu assigne fancybox as #various3, bien #various3 nexiste meme pas encore dans ta page.

donc, dit moi ou dans ton code tu pourrais placer facybox pour etre sur que various3 est ecrit
bien ici :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
                    $.ajax
                    ({
                        type: "POST",
                        url: "data_posts.php",
                        data: "page="+page,
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                $("#container").html(msg);
                               /*ICI ICI ICI */
                                $("#various3").fancybox({
				   'width'			: '75%',
				   'height'			: '75%',
				   'autoScale'		: false,
				   'transitionIn'		: 'none',
				   'transitionOut'		: 'none',
				   'type'			: 'iframe'
			        });
                            });
                        }
                    });

note : essaye deviter de repeter plusieurs foi le meme id comme #various3, utilise des class a la place

et

quand tu fait ton count en php/sql
tu le fait sur
Code :
"SELECT * FROM posts  WHERE idrub=".$idpage." AND languepost='".$languepage."' ORDER BY ordre ASC, date DESC LIMIT ".$start.", ".$per_page."";
mais sans le limit...

mais plus haut dans ton code tu fait une condition
Code :
1
2
3
 
/*si pas de resultat : */
"SELECT * FROM posts, langues  WHERE langues.langues=posts.languepost AND posts.idrub=".$idpage." AND langues.statut=0 ORDER BY posts.ordre ASC, posts.date DESC LIMIT ".$start.", ".$per_page."";
alors que dans ta query de count tu le fait toujours sur la premiere des deux le count sera biaiser alors a loccation

aussi savait du que tu peu trouver le nombre de resultat de ta table en entier meme en fesant limit avec SQL_CALC_FROM_ROW

http://www.arraystudio.com/as-worksh...ing-limit.html

bonne chance!
nault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2011, 12h29   #4
Candidat au titre de Membre du Club
 
Inscription : mai 2009
Messages : 47
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 47
Points : 10
Points : 10
Bonjour Nault,

Tout d'abord merci beaucoup, déjà car désormais l'ouverture fancybox fonctionne et en plus car tu ne t'es pas limité à me donner la réponse mais tu as pris le temps de me l'expliquer, c'est génial, vraiment.

Je vais prendre le temps d'analyser toutes tes remarques (celle par rapport à mettre class plutôt qu'id était également nécessaire).

Là cela fonctionne mais j'aurais encore une question autour de ce système de pagination.

A l'heure actuelle, la page data-posts envoie en post le contenu et la pagination à la page index-test

celle-ci reçoit tout cela avec cette fonction :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
function loadData(page){
                    loading_show();                    
                    $.ajax
                    ({
                        type: "POST",
                        url: "data_posts.php",
                        data: "page="+page,
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                loading_hide();
                                $("#container").html(msg);
								$(".various3").fancybox({
								   'width'			: '75%',
								   'height'			: '75%',
								   'autoScale'		: false,
								   'transitionIn'		: 'elastic',
								   'transitionOut'		: 'fade',
								   'type'			: 'iframe'
									});
 
                            });
                        }
                    });
                }
Ce systeme de pagination d'articles ne fonctionne que pour les articles de ma page d'accueil : index-test.php
J'aurais besoin de recevoir en plus une variable supplémentaire qui est l'id en GET présent dans mon adresse et faisant la différence entre toutes mes pages. car sans cela
page accueil : index-test.php
exemple ma 2eme page contact : index-test.php?id=8

J'aimerais passer cette variable lors de l'envoi des infos mais je ne vois pas comment l'envoyer.

l'envoi de la variable page en POST est dans data-posts concerne la pagination des articles d'une seule page et il me faudrait en plus la variable id qui elle concerne l'id de chaque page.

Code :
1
2
3
4
5
 
$goto = "<input type='text' class='goto' size='1' style='margin-top:-1px;margin-left:60px;'/><input type='button' id='go_btn' class='go_button' value='Go'/>";
$total_string = "<span class='total' a='$no_of_paginations'>Page <b>" . $cur_page . "</b> of <b>$no_of_paginations</b></span>";
$msg = $msg . "</ul>" . $goto . $total_string . "</div>";  // Content for pagination
echo $msg;
J'ai essayé de la passer dans un input hidden mais je n'arrive pas à la récupérer et l'idéal serait non pas de la passer en POst mais en GET mais à mon avis c'est pas possible vu comment on est embarqué.
Je te remercie d'avance si tu peux m'expliquer ...
fabrizti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2011, 16h24   #5
Membre du Club
 
Jean Frederic Nault
Inscription : juillet 2010
Messages : 61
Détails du profil
Informations personnelles :
Nom : Jean Frederic Nault

Informations forums :
Inscription : juillet 2010
Messages : 61
Points : 59
Points : 59
Salut Fabrizti,

pourquoi tu passe cette variable de la meme facon?

quand ta page se load tu a access a cette variable en get ex :

Code :
1
2
3
4
 
<script type="text/javascript">
 idpage = "<?php echo get['id'];?>"
</script>
ton javascript a maintenant la valeur du get en mémoire

ensuite dans ton ajax, bien ca devrais ressembler a :

Code :
1
2
3
4
5
6
7
 
                    $.ajax
                    ({
                        type: "POST",
                        url: "data_posts.php",
                        data: "page="+page+"&idpage="+idpage,
                        success: function(msg)
bon scripting!
nault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2011, 17h35   #6
Candidat au titre de Membre du Club
 
Inscription : mai 2009
Messages : 47
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 47
Points : 10
Points : 10
Effectivement, je prenais le problème dans le mauvais sens.

Cela fonctionne super comme ca .

Merci beaucoup j'ai vraiment du mal à raisonner en javascript ajax.

Pourrais tu me conseiller pour bien apprendre ces langages. (php xhtml css ca va ... mais le reste...)

Merci beaucoup encore une fois
fabrizti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2011, 18h20   #7
Membre du Club
 
Jean Frederic Nault
Inscription : juillet 2010
Messages : 61
Détails du profil
Informations personnelles :
Nom : Jean Frederic Nault

Informations forums :
Inscription : juillet 2010
Messages : 61
Points : 59
Points : 59
quand tu dit ces language tu parle le javascript et ajax?

juste pour enlever toute confusion, ajax n'est pas un language. cest une methode qui va un peu comme ca.

en javascript, il y a l'object XMLHTTPRequest(tout les navigateur le nomme pas ainsi et jquery avec $.ajax... fait le boulot a ta place pour trouver lequel est de circonstance.

cette objet permet denvoyer de la data sous forme de get ou post vers un script (script obligatoirement sur le meme serveur) et scrip qui peux etre en php asp ... et renvois a lobjet des indication sur son etat, et finalement renvoit le text generer par le script pointé.

Mes conseil si tu veux vraiment apprendre javascript et ne pas qu'être qu'un bidouilleur mais un programmeur. va comme suis.

1-fait en le plus souvent possible
2-Réapprend les base, oubli jquery pour linstant (difficile car la tu fait des truc qui marche et cest le fun mais tres mauvais pour apprendre), les base de jquery est javascript, mais la base de javascript cest une implementation de ecma script dans un navigateur.

-regarde les base de javascript, class,closure,prototype... ensuite regarde son implementation dans les navigateur, cest koi lobjet window? le dom? cest koi des event? ... quelle sont leur propriété vois comment integration ne se fait pas de la meme facon dun navigateur a lautre car chaque navigateur on un moteur javascript differemt. Pour firefox cest spider monkey, pour ie9 (Chakra)...

-installe 2 modules pour firefox, firebug et web developper kit (tres tres utile).

3- N'hesite pas a poser des question quand tu bloque...

4- Li des bon livre, regarde les commentaire avant de d'acheter un livre car trop sont ceux qui sont de tres mauvaise qualité

http://books.google.ca/books?id=2weL...page&q&f=false

voila en gros
nault est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h59.


 
 
 
 
Partenaires

Hébergement Web