begin process at 2012 02 13 14:20:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

href pas d effet


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

href pas d effet

vendredi 16 novembre 2007 à 00:56:08 | href pas d effet

vbmarh

salut voila ca un jour que je suis sur ca
<a href=\"javascript:;\"onclick=\"displayQCalendar('month','".(year)."')\"class='headerNav' title='Prev Year'><<</a>
cela ne donne rien sur ie et firefox
voici la fonction

function displayQCalendar(m,y) {
    var ran_no=(Math.round((Math.random()*9999)));
    http.open('get', '<?= $ajaxPath; ?>?m='+m+'&y='+y+'&ran='+ran_no);
       http.onreadystatechange = function() {
        if(http.readyState == 4 && http.status == 200) {
              var response = http.responseText;
              if(response) {
                document.getElementById("quickCalender").innerHTML = http.responseText;
              }
           }

    }
       http.send(null);
}

pas d effet sur le href
vendredi 16 novembre 2007 à 09:27:43 | Re : href pas d effet

bultez

Membre Club


Bonjour,

    comme on ne voit pas ce qu'il y a dans les variables...
          il faut la page générée, enfin, un extrait !
          le minimum, mais tout ce qu'il faut quand même pour voir.
   
    quelques pistes

<a href="javascript:displayQCalendar(12,2007)"
    class='headerNav' title='Prev Year'>lien</a>
    ( la syntaxe que tu nous montres n'est pas correcte )

    puis après, comme http est indéfini....
   
   difficile d'aller plus loin.


                Cordialement            Bul         [mon Site]     [M'écrire]
vendredi 16 novembre 2007 à 15:44:19 | Re : href pas d effet

vbmarh

merci BULTEZ

<?php 

 * CREATE TABLE `calendar` (
 * `id` INT NOT NULL AUTO_INCREMENT ,
`* day` VARCHAR( 2 ) NOT NULL ,
 * `month` VARCHAR( 2 ) NOT NULL ,
 * `year` VARCHAR( 4 ) NOT NULL ,
 * `link` VARCHAR( 255 ) NOT NULL ,
 * `desc` TEXT NOT NULL ,
 * PRIMARY KEY ( `id` )
 * );
 *
 * 3. Configure the db and path access below. Use any db of your choice. You can also configure
 * the CSS to change the look and feel of the calendar.
 */

// This year
$y = date('Y');
// This month
$m = date('n');
// This Day
$d = date('j');
$today = array('day'=>$d, 'month'=>$m, 'year'=>$y);
// If user specify Day, Month and Year, reset the var
if (isset($_GET['m'])) {
 $y = $_GET['y'];
 $m = $_GET['m'];
}

// CONFIGURE THE DB ACCESS
$dbhost = 'localhost';
$dbuser = 'name';
$dbpass = 'mypass';
$database = "dbasen";
$dbConnect = mysql_connect($dbhost, $dbuser, $dbpass);
if (!$dbConnect) {
   die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db($database, $dbConnect);
if (!$db_selected) {
   die ('db selection error : ' . mysql_error());
}

// name of table
$tableName = 'calendar';

// name of css
$css = 'calendar';
$day=1;
$month=1;
$year=1;
$link=1;
$desc=1;
// Location of the calendar script file from the root
$ajaxPath = '/quick_calendar.php';
if(isset($_SESSION['idste'])){
$idste = $_SESSION['idste'];
//

$sql = "SELECT * FROM $tableName WHERE (idste='$idste') && ((month='$m' AND year='$y') || (month='*' AND year='$y') || (month='$m' AND year='*') || (month='*' AND year='*'))";
} else { $idste = 0 ;
$sql = "SELECT * FROM $tableName WHERE (idste='$idste') && ((month='$m' AND year='$y') || (month='*' AND year='$y') || (month='$m' AND year='*') || (month='*' AND year='*'))";
echo "Utiliser votre calendrier" ;}
$rs = mysql_query($sql);
$links = array();

while ($rw = mysql_fetch_array($rs)) {
 extract($rw);
 $links[] = array('day'=>$day, 'month'=>$month, 'year'=>$year, 'link'=>$link, 'desc'=>$desc);
}

?>

<?php
// if called via ajax, dont display style sheet and javascript again
if (!isset($_GET['ran'])) {

?>
<style type="text/css">
.calendar {
 /** configure the width **/
 width:220px;
 background-color: #D6E8FF;
 border: 1px solid #000000;
 font-family: Arial, Helvetica, sans-serif;
 font-size: 12px;
 margin:0px;
 padding:0px;
 text-align:center;
}
.calendar th {
 background-color: #FFFFCC;
 font-weight: bold;
 height: 20px;
}
.calendar .header {
 background-color: #5670B3;
 font-weight: bold;
 height: 24px;
 color: #FFFFFF;
}
.calendar .footer {
 background-color: #5670B3;
 font-weight: bold;
 font-size:0.8em;
 color: #FFFFFF;
 width:100%;
}
.calendar td {
 width: 22px;
 height: 20px;
 text-align: center;
 font-size:0.9em;
 padding: 2px;
}
.calendar .today {
 width: 18px;
 height: 16px;
 background-color: #FAD2DA;
 padding: 2px;
 border: 1px solid #000000;
}

.calendar .link {
 width: 18px;
 height: 16px;
 background-color: #D4C9EF;
 padding: 2px;
 border: 1px solid #000000;
}

.calendar a, .calendar a:link, .calendar a:hover {
 font-weight: bold;
 text-decoration: underline;
 color: #000000;

}
.calendar a.headerNav, .calendar a:link.headerNav, .calendar a:hover.headerNav {
 background-color: #5670B3;
 color: #ffffff;
}

.calendar a.footerNav, .calendar a:link.footerNav, .calendar a:hover.footerNav {
 width: 100%;
 background-color: #5670B3;
 color: #ffffff;
}
</style>

<script language="javascript">

function createQCObject() {
   var req;
   if(window.XMLHttpRequest){
      // Firefox, Safari, Opera...
      req = new XMLHttpRequest();
   } else if(window.ActiveXObject) {
      // Internet Explorer 5+
      req = new ActiveXObject("Microsoft.XMLHTTP");
   } else {
      alert('Problem creating the XMLHttpRequest object');
   }
   return req;
}

// Make the XMLHttpRequest object
var http = createQCObject();

function displayQCalendar(m,y) {
 var ran_no=(Math.round((Math.random()*9999)));
 http.open('get', '<?php echo $ajaxPath; ?>?m='+m+'&y='+y+'&ran='+ran_no);
    http.onreadystatechange = function() {
  if(http.readyState == 4 && http.status == 200) {
        var response = http.responseText;
        if(response) {
    document.getElementById("quickCalender").innerHTML = http.responseText;
        }
     }
 }
    http.send(null);
}
</script>
<?php
}
?>
<?php
class CreateQCalendarArray {
   
 var $daysInMonth;
 var $weeksInMonth;
 var $firstDay;
 var $week;
 var $month;
 var $year;

 function CreateQCalendarArray($month, $year) {
  $this->month = $month;
  $this->year = $year;
  $this->week = array();
  $this->daysInMonth = date("t",mktime(0,0,0,$month,1,$year));
  // get first day of the month
  $this->firstDay = date("w", mktime(0,0,0,$month,1,$year));
  $tempDays = $this->firstDay + $this->daysInMonth;
  $this->weeksInMonth = ceil($tempDays/7);
  $this->fillArray();
 }
 
 function fillArray() {
  // create a 2-d array
  $counter=1;
  for($j=0;$j<$this->weeksInMonth;$j++) {
   for($i=0;$i<7;$i++) {
    $counter++ ;
    $this->week[$j][$i] = $counter;
    // offset the days
    $this->week[$j][$i] -= $this->firstDay;
    if (($this->week[$j][$i] < 1) || ($this->week[$j][$i] > $this->daysInMonth)) { 
     $this->week[$j][$i] = "";
    }
   }
  }
 }
}

class QCalendar {
 
 var $html;
 var $weeksInMonth;
 var $week;
 var $month;
 var $year;
 var $today;
 var $links;
 var $css;

 function QCalendar($cArray, $today, &$links, $css='') {
  $this->month = $cArray->month;
  $this->year = $cArray->year;
  $this->weeksInMonth = $cArray->weeksInMonth;
  $this->week = $cArray->week;
  $this->today = $today;
  $this->links = $links;
  $this->css = $css;
  $this->createHeader();
  $this->createBody();
  $this->createFooter();
 }
 
 function createHeader() {
    $header = date('M', mktime(0,0,0,$this->month,1,$this->year)).' '.$this->year;
    $nextMonth = $this->month+1;
    $prevMonth = $this->month-1;
    // thanks adam taylor for modifying this part
  switch($this->month) {
   case 1:
       $lYear = $this->year;
       $pYear = $this->year-1;
       $nextMonth=2;
       $prevMonth=12;
       break;
     case 12:
       $lYear = $this->year+1;
       $pYear = $this->year;
       $nextMonth=1;
       $prevMonth=11;
         break;
     default:
         $lYear = $this->year;
       $pYear = $this->year;
         break;
    }//
  // --
  $this->html = "<table cellspacing='0' cellpadding='0' class='$this->css'>
  <tr>
  <th class='header'>&nbsp;<a href=\"javascript:;\" onclick=\"displayQCalendar('$this->month','".($this->year-1)."')\" class='headerNav' title='Prev Year'> <<</a></th>
  <th class='header'>&nbsp;<a href=\"javascript:;\" onclick=\"displayQCalendar('$prevMonth','$pYear')\" class='headerNav' title='Prev Month'><</a></th>
  <th colspan='3' class='header'>$header</th>
  <th class='header'><a href=\"javascript:;\" onclick=\"displayQCalendar('$nextMonth','$lYear')\" class='headerNav' title='Next Month'>></a>&nbsp;</th>
  <th class='header'>&nbsp;<a href=\"javascript:;\" onclick=\"displayQCalendar('$this->month','".($this->year+1)."')\"  class='headerNav' title='Next Year'>>></a></th>
  </tr>";
 echo ($this->month) ;
 echo ($this->year-1) ;}
 
 function createBody(){
  // start rendering table
  $this->html.= "<tr><th>Di</th><th>Lu</th><th>Ma</th><th>Me</th><th>Je</th><th>Ve</th><th>Sa</th></tr>";
  for($j=0;$j<$this->weeksInMonth;$j++) {
   $this->html.= "<tr>";
   for ($i=0;$i<7;$i++) {
    $cellValue = $this->week[$j][$i];
    // if today
    if (($this->today['day'] == $cellValue) && ($this->today['month'] == $this->month) && ($this->today['year'] == $this->year)) {
     $cell = "<div class='today'>$cellValue</div>";
    }
    // else normal day
    else {
     $cell = "$cellValue";
    }
    // if days with link
    foreach ($this->links as $val) {
     if (($val['day'] == $cellValue) && (($val['month'] == $this->month) || ($val['month'] == '*')) && (($val['year'] == $this->year) || ($val['year'] == '*'))) {
      $cell = "<div class='link'><a href=\"{$val['link']}\" title='{$val['desc']}'>$cellValue</a></div>";
      break;
     }
    } 
    $this->html.= "<td>$cell</td>";
   }
   $this->html.= "</tr>";
  } 
 }
 
 function createFooter() {
  $this->html .= "<tr><td colspan='7' class='footer'><a href=\"javascript:;\" onclick=\"displayQCalendar('{$this->today['month']}','{$this->today['year']}')\" class='footerNav'>Aujourdhui est le {$this->today['day']} ".date('M', mktime(0,0,0,$this->today['month'],1,$this->today['year']))." {$this->today['year']}</a></td></tr></table>";
 }
 
 function render() {
  echo $this->html;
 }
}
?>

<?php
// render calendar now
$cArray = &new CreateQCalendarArray($m, $y);
$cal = &new QCalendar($cArray, $today, $links, $css);
if (!isset($_GET['ran'])) {
 echo "<div id='quickCalender'>";
}
$cal->render();
if (!isset($_GET['ran'])) {
 echo "</div>";
}
?>



dans les pages pages php j insere cette ligne
<?php include('../calender/quick_calendar.php'); ?>
le flux depuis la base arrive bien aux tooltips
le prbleme c les barres de navigations << <  > >> qui n'arrivent a faire des recules ou avancés par mois et par années sur le header du calandrier
NB : code source trouver n'est pas de mois [ Lien ]

merci .

vendredi 16 novembre 2007 à 16:33:31 | Re : href pas d effet

bultez

Membre Club

>>je répète, je me cite ?

      il faut la page générée ( pas le php ! ),enfin, un extrait !
          le minimum
, mais tout ce qu'il faut quand même pour voir.

      parce que je ne sais pas, mais moi je n'ai pas ta base de données !
      ou alors, c'est une question PHP, et là tu n'es pas dans le bon forum.

       tu as peut-être des erreurs de syntaxe :
				
						

¡--------¡----------------------------------------------------------¡
|FireFox |regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
| | |
| | et mieux, télécharger FireBug |
|--------|----------------------------------------------------------|
|Internet|activer le deboggage : Outils/options Internet/Avancés |
|Explorer| dans la liste, sous "Navigation" : décocher |
| | ° Afficher une notification de chaque erreur de script |
| | ° Désactiver le débogage de Scripts (Internet Explorer) |
| | |
| | et mieux, télécharger le Debogger IE |
|--------|----------------------------------------------------------|
|K-Meleon|regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
|--------|----------------------------------------------------------|
|Opera |regarder la "console d'erreurs" |
| | Outils / Avancé / Console d'erreurs |
|--------|----------------------------------------------------------|
|Safari |regarder Debug / Show JavaScript Console |
| | |
| |modif Fichier "Support:\Documents and Settings\utilisateur|
| |\Application Data\Apple Computer\Safari\Preferences.plist"|
| | y ajouter <key>IncludeDebugMenu</key> |
| | <true/> |
!--------!----------------------------------------------------------!


                Cordialement            Bul         [mon Site]     [M'écrire]
vendredi 16 novembre 2007 à 16:34:38 | Re : href pas d effet

vbmarh

Re
apres quelque tentative j ai reussi a faire marché les << < > >> pour naviguer sur le calandrier cela venait du path de la fonction java
 function displayQCalendar(m,y){
 var ran_no=(Math.round((Math.random()*9999)));

 http.open('get', '<?php echo $ajaxPath; ?>?m='+m+'&y='+y+'&ran='+ran_no);
    http.onreadystatechange = function() { ....
et a la place il faut avoir puisque mon fichier php se trouve sur un dossier calendar/
<?php echo '../calender/'. $ajaxPath; ?>?m='+m+'&y='+y+'&ran='+ran_no);
ca m as pris du temps pour connaitre un truc tout bete
Mais helas je suis pas au bou de mes peines
aufait lors du lancement de la page pour la premiere fois ou apres un refresh du navivagateur la clause SQL where est prise en compte  => idste ma variable de session s injecte dans mon sql

idste ici represante un index sur ma table qui stock l ide d une personne
if(isset($_SESSION['idste'])){
$idste = $_SESSION['idste'];
$sql = "SELECT * FROM $tableName WHERE (idste='$idste') && ((month='$m' AND year='$y') || (month='*' AND year='$y') || (month='$m' AND year='*') || (month='*' AND year='*'))";
}else{ $idste = 0 ;
$sql = "SELECT * FROM $tableName WHERE (idste='$idste') && ((month='$m' AND year='$y') || (month='*' AND year='$y') || (month='$m' AND year='*') || (month='*' AND year='*'))";
echo "Utiliser votre calendrier" ;}
$rs = mysql_query($sql);
$links = array();

while ($rw = mysql
Mais  lorsque je naviguer sur  le navigateur du calendrier << < Nov2007 > >> j ai remarquer que la Clause  WHERE (idste='$idste') n est plus efficace et que la sortie prend le else plutot que la partie true du if

vendredi 16 novembre 2007 à 16:48:30 | Re : href pas d effet

vbmarh

merci BULTEZ
C t tres rapide merci pour repondre si rapidement et pour les conseil 
tous ce qu il faut pour ce script est la .c est un melange de php et javascript c la raison pour laquel je poste chez vous

 

la base 


 * CREATE TABLE `calendar` (
 * `id` INT NOT NULL AUTO_INCREMENT ,
*  'idste'  VARCHAR( 34 ) NOT NULL ,
`* day` VARCHAR( 2 ) NOT NULL ,
 * `month` VARCHAR( 2 ) NOT NULL ,
 * `year` VARCHAR( 4 ) NOT NULL ,
 * `link` VARCHAR( 255 ) NOT NULL ,
 * `desc` TEXT NOT NULL ,
 * PRIMARY KEY ( `id` )
 * );
le code sur le post en haut est tout ce qu il ya il suffit cette ligne sur les autres page en php
<?php include('../calender/quick_calendar.php'); ?> calender represente ici le dossier du fichier quick_calendar.php
merci une autre fois pour les delais

vendredi 16 novembre 2007 à 16:56:36 | Re : href pas d effet

bultez

Membre Club
quand je parlais de la base je ne parlais pas de sa
description, ( que tu avsis mis ) mais de son contenu.
et surtout : n'envoie pas le contenu, mais la page html générée
( un extrait, juste le nécessaire ), pas le PHP.

                Cordialement            Bul         [mon Site]     [M'écrire]
vendredi 16 novembre 2007 à 17:57:14 | Re : href pas d effet

vbmarh

Re j ai installer fire bug
sur l anglet console fire bug
Sur l anglais script  j ai cette source html

107112006<div id='quickCalender'><table cellspacing='0' cellpadding='0' class='calendar'>
108 <tr>
109 <th class='header'>&nbsp;<a href="javascript:;" onclick="displayQCalendar('11','2006')"
class='headerNav' title='Prev Year'> <<</a></th>
110 <th class='header'>&nbsp;<a href="javascript:;" onclick="displayQCalendar('10','2007')"
class='headerNav' title='Prev Month'><</a></th>
111 <th colspan='3' class='header'>Nov 2007</th>
112 <th class='header'><a href="javascript:;" onclick="displayQCalendar('12','2007')"
class='headerNav' title='Next Month'>></a>&nbsp;</th>
113 <th class='header'>&nbsp;<a href="javascript:;" onclick="displayQCalendar('11','2008')"
class='headerNav' title='Next Year'>>></a></th>
114 </tr><tr><th>Di</th><th>Lu</th><th>Ma</th><th>Me</th><th>Je</th><th>Ve</th><th>Sa</th></tr>
<tr><td></td><td></td><td></td><td>1</td><td>2</td>
<td>3</td><td>4</td></tr><tr><td>5</td><td>6</td><td>7</td><td>8</td><td><div class='link'>
<a href="
link" title='Remember to check
updates from  every month.'>9</a></div></td><td>10</td><td>11</td></tr><tr><td>12</td><td>13
</td><td>14</td><td>15</td><td>16</td><td>17</td><td>18</td>
</tr><tr><td>19</td><td>20</td><td>21</td><td>22</td><td>23</td><td><div class='link'>
<a href="link2" title='this is // END OF CONFIGURATION.
 YOU CAN CHANGE THE CSS. THE OTHER CODES CAN BE KEPT AS DEFAULT IF YOU WANT.'>24</a></div>
 </td><td><div class='today'>25</div></td></tr><tr><td>26</td><td>27</td>
 <td>28</td><td>29</td><td>30</td><td></td><td></td></tr><tr><td colspan='7'
 class='footer'><a href="javascript:;" onclick="displayQCalendar('11','2007')"
 class='footerNav'>Aujourdhui est le 25 Nov 2007</a></td></tr></table></div>
115<link href="/calender/quick_calendar.css" rel="stylesheet" type="text/css" />
/--------------------------
Noter que infobull tirent leur text par Ajax du TABLE field desc suivant WHERE idste = $_SESSION['idste'] du sqlPHp

Ma table sur PHPMYADMIN
---------
 id    idste   day  month    year   link         desc
 1     61      24     *         2007   link1       Info bull  du 24 si idste=$_SESSION[idste]
 2     61      5      11        2006   link2       Olympics, remember to buy ticket 
 3     0        2      11        2007   link3       ../membre.php      Ici vous notez tous evennement ..
 4     61      9      *           *        link4       ../membre.php      Ici vous notez tous evennement

----------
cela semble bon par rapport au java et je crois que je dois peut trouver un moyen d imposer au java de prendrze en consideration la variable de session php dans les fonction java qui sont reecrite avec php
function createQCObject() {
 var req;
 if(window.XMLHttpRequest){
 // Firefox, Safari, Opera...
 req = new XMLHttpRequest();
 } else if(window.ActiveXObject) {
 // Internet Explorer 5+
 req = new ActiveXObject("Microsoft.XMLHTTP");
 } else {
 alert('Problem creating the XMLHttpRequest object');
 }
 return req;
}
 
// Make the XMLHttpRequest object
var http = createQCObject();
 
function displayQCalendar(m,y) {
 var ran_no=(Math.round((Math.random()*9999)));
 http.open('get', '../calender/quick_calendar.php?m='+m+'&y='+y+'&ran='+ran_no);
 http.onreadystatechange = function() {
 if(http.readyState == 4 && http.status == 200) {
 var response = http.responseText;
 if(response) {
 document.getElementById("quickCalender").innerHTML = http.responseText;
 }
 }
 }
 http.send(null);
je ne comprend vraiment cette ligne aussi
 if(http.readyState == 4 && http.status == 200)
enfin je suis pas tres fort en dev je l avou
faut il passer idste la variable de session ici
http.open('get', '../calender/quick_calendar.php?m='+m+'&y='+y+'&ran='+ran_no);
j ai tete qui chauffe
merci sos 

 


Cette discussion est classée dans : http, effet, href, ran, displayqcalendar


Répondre à ce message

Sujets en rapport avec ce message

Problème alignement [ par overstorex ] Bonsoir,J'espère que je suis au bonne endroit pour poster cette demande d'aide.je suis un néophyte en script,je m'en excuse .<img src="http://www.java ouverture d'une page d'alerte lors de l'ouverture de mon site [ par fcpe ] Bonjour,Je souhaiterais, lors de l'ouverte de mon site, qu'une page ou un popup puisse s'ouvrir juste au démarrage.Ma page d'accueil est comme ceci :< Poser une limite de clic sur un lien par jour [ par thedealer ] Je cherche à limiter le nombre de clics sur un lien en ouvrant une certaine page selon le nombre de clics effectués par une meme IP (le compteur devra API Frimousse [ par chicochaleur29 ] BonjourJ'aimerai mettre la liste des dslam non joinable de Free sur mon site, mais je ne sais pas du tout comment faireEn effet, je sais qu'il existe Erreur de script de redirection (javascript) [ par guillaumego ] Bonjour, J'ai créé un script qui devrait permettre aux utilisateurs d'IE 8 d'être rediriger vers http://ww Problème avec lightbox et flash [ par younes777 ] Bonjour,je viens d'inserer sur mon site l'effet lightbox, comme expliqué sur :http://www.javascriptkit.com/script/script2/backbox/mon problème c que l Probléme Pop Up [ par sunshine59136 ] Euh je savais pas trop ou poster alors j'espére que je ne me suis pas tromper =) . Voila depuis le debut d'aprés midi je cherche une solution a mon pr Modification de script ?!! [ par DRAAK88 ] .............................................................................Bonjour, voila, j'ai voulu mettre ce scripte dans la partie HTML de mon s La newsletter CodesSources boguée (liens vers site cybersquatter!) [ par verdy_p ] La dernière Newsletter postée par Codes-Sources contient tous ses liens incorrects vers le site consacré à Javascript. On  tombe sur un site de cybers


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 9,001 sec (3)

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