[RESOLU] weekend et jours feriés

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] weekend et jours feriés

Re: [RESOLU] weekend et jours feriés

par moogli » 29 août 2012, 13:16

combinaison magique : ctrl + shift + i :mrgreen:

le F12 c'est la console effectivement,

sinon option => outils => outils de développement


@+

Re: weekend et jours feriés

par piotrowski-s » 29 août 2012, 09:42

bien je suis sur chrome jsutement mais rien ne s'affiche dans la console.

Re: weekend et jours feriés

par moogli » 29 août 2012, 09:22

je te conseil de tester la chose sur chrome et d'utiliser l'extension developper qui te permettras de debug ton JS et donc de suivre ce qui se passe ;)



@+

Re: weekend et jours feriés

par piotrowski-s » 29 août 2012, 09:14

j'ai essayé ainsi [javascript]
document.getElementById('date').value = (itemDt.getDate() < 9 ? "0" : "")+ (itemDt.getDate()+2)+ "-" + (itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();[/javascript]

mais ça ne fonctionne pas aussi j'ai fais comme ça [javascript] itemCount.value = (itemDt.getDate() < 9 ? "0" : "")+ (itemDt.getDate()+2)+ "-" + (itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();
[/javascript]

ça fonctionne bien mais que lorsque je clic après au bout d'une microsecondes les dates reprennent leur valeurs originales.

Re: weekend et jours feriés

par piotrowski-s » 29 août 2012, 08:55

en fait le problème est dans ces lignes:

[javascript]if (itemDt.getDay() == 6) {

itemCount.value = itemDt.getDate()+ "-" + (itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();


}
if (itemDt.getDay() == 0) {

itemCount.value = itemDt.getDate()+ "-" + (itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();

}[/javascript]

elle devrait changer vetrs le sprochain lundi que ce soit samedui ou dimanche mais les jours restent les même

Re: weekend et jours feriés

par piotrowski-s » 29 août 2012, 07:47

Bonjour voici le code utilisé.
<form action="<?php echo (isset($_POST['go'])) ? 'go2.php' : '#'; ?>"
method="post">
    <input type="hidden" name="liasse" value="<?php echo $_GET['liasse']; ?>"
    />
    <input type="hidden" name="n_doss" value="<?php echo $_GET['n_doss']; ?>"
    />
    <table id="box-table-a">
        <tr>
            <th scope="col">
                <input name="data[<?php echo ++$i; ?>][code_s]" type="text" value="CODE S"
                size="10">
            </th>
            <th scope="col">
                <input name="data[<?php echo $i; ?>][libelle]" type="text" value="LIBELLE"
                size="30">
            </th>
            <th scope="col">
                <input name="data[<?php echo $i; ?>][action]" type="text" value="ACTION"
                size="15">
            </th>
            <th scope="col">
                <input name="data[<?php echo $i; ?>][libelle]" type="text" value="DESCRIPTION"
                size="40">
            </th>
            <th scope="col">
                <input type="text" name="data[<?php echo $i; ?>][date]" value="DATE D'ACTION"
                size="12">
            </th>
            <th scope="col">
                <input type="text" name="data[<?php echo $i; ?>][date]" value="VALIDATION"
                size="12">
            </th>
            <th scope="col"><strong>ETAT</strong>
            </th>
        </tr>
        <?php while($row=m ysql_fetch_assoc($qry)): ?>
            <tr>
                <td>
                    <input name="data[<?php echo ++$i; ?>][code_s]" type="text" value="<?php echo $row['code_s'];?>"
                    size="10">
                </td>
                <td>
                    <input name="data[<?php echo $i; ?>][libelle]" type="text" value="<?php echo $row['libelle']; ?>"
                    size="30">
                </td>
                <td>
                    <input name="data[<?php echo $i; ?>][action]" type="text" value="<?php echo $row['action']; ?>"
                    size="15">
                </td>
                <td>
                    <input name="data[<?php echo $i; ?>][libelle]" type="text" value="<?php echo $row['description']; ?>"
                    size="40">
                </td>
                <td>
                    <script type="text/javascript">
                        //<![CDATA[
                        window.addEvent('domready', function () {
                            myCal1 = new Calendar({
                                'data[$i][date]': 'd-m-Y'
                            }, {
                                direction: 0,
                                tweak: {
                                    x: 6,
                                    y: 0
                                }
                            });
                        });
                        //]]>
                    </script>
                    <input type="text" name="data[<?php echo $i; ?>][date]" class="date"
                    id="date<?php echo $i; ?>" value="<?php 


echo date('d-m-Y',strtotime($row['date_action'])) ;

 ?>" size="12">
                </td>
                <td nowrap>
                    <input type="text" name="data[<?php echo $i; ?>][date_validation]" id="data[<?php echo $i; ?>][date_validation]"
                    value="<?php if($row['date_validation']=='0000-00-00') {echo 'Non trait&eacute;' ; }
 else {
echo (date('d-m-Y',strtotime($row['date_validation']))); }
 ?>" size="12">
                </td>
                <td nowrap>
                    <?php if($row[ 'date_validation']=='0000-00-00' AND strtotime($row[
                    'date_action'])>strtotime(date('Y-m-d'))) {?><a href="edit-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>"><img src="images/gtk-edit.png" width="24" height="24"></a> 
                        <a
                        href="validate-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>">
                            <img src="images/go.gif" width="24" height="24">
                            </a> <a href="delete-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>"
                            onClick="return confirm('voulez vous vraiment supprimer cette action ?')"><img src="images/trash-paper.png" width="24" height="24"></a>
                            <?php
                            } elseif($row[ 'date_validation']=='0000-00-00' AND strtotime($row[
                            'date_action'])<=strtotime(date( 'Y-m-d'))) {?><a href="#" onClick="return confirm('Vous ne pouvez pas &eacute;diter ou changer la date d\'une action appartenant à votre passif !')"><img src="images/gtk-edit.png" width="24" height="24"></a> 
                                <a
                                href="validate-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>">
                                    <img src="images/go.gif" width="24" height="24">
                                    </a> <a href="#" onClick="return confirm('Vous ne pouvez pas supprimer une action appartenant à votre passif !')"><img src="images/trash-paper.png" width="24" height="24"></a>
                                    <?php
                                    } else { ?>
                                        <img src="images/tick_48.png" width="24" height="24">
                                        <?php } ?>
                </td>
            </tr>
            <?php endwhile; ?>
                </td>
                </tr>
    </table>

Re: weekend et jours feriés

par moogli » 28 août 2012, 22:22

C'est quoi le html qui va avec tous ça ?

j'ai pas l'impression que tu fasse des modifications la :s

as tu testé JQuery ou un autre framework JS qui pourrait te simplifier un peu la vie ? :)


@+

Re: weekend et jours feriés

par piotrowski-s » 28 août 2012, 16:47

non, en fait ça ne fonctionne pas de la sorte.

Re: weekend et jours feriés

par Mazarini » 28 août 2012, 16:23

itemCount.value => items.value ? (mais je suis une quiche en javascript)

Re: weekend et jours feriés

par piotrowski-s » 28 août 2012, 16:04

j'ai essayé comme cela mais les jours ne changent pas je ne comprends pas pourtant tout semble ok non?[javascript]<script type="text/javascript">
function getdate()
{
var items = new Array();
var itemCount = document.getElementsByClassName("date");

for(var i = 0; i < itemCount.length; i++)
{
items = document.getElementById("date" + (i+1)).value;
}



for(var i = 0; i < itemCount.length; i++)
{
items = document.getElementById("date" + (i+1)).value;
var itemDtParts = items.split("-");
var itemDt = new Date(itemDtParts[2], itemDtParts[1] - 1, itemDtParts[0]);
if (itemDt.getDay() == 6) {

itemCount.value = (itemDt.getDate() < 9 ? "0" : "")+ (itemDt.getDate() + 2)+ "-" +(itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();

}
if (itemDt.getDay() == 0)
{

itemCount.value = (itemDt.getDate() < 9 ? "0" : "")+ (itemDt.getDate() + 1)+ "-" +(itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();
}
return items;
}
</script> [/javascript]

Re: weekend et jours feriés

par Mazarini » 28 août 2012, 15:50

A part le fait qu'il manque un t à alert('weekend'), je ne vois pas d'erreur de syntaxe.

Il y a aussi un problème de logique avec le return items avant la dernière boucle.

Re: weekend et jours feriés

par piotrowski-s » 28 août 2012, 14:42

en fait j'ai un script que j'ai fais pour changer les dates si elles sont du weekend au jour suivant.

Mais il ne fonctionne pas.

je ne sais pas pourquoi.

J'ai donc bien mis le tout dans la balise du body avec l'action onload.

voila le code en question:[javascript]<script type="text/javascript">
function getdate()
{
var items = new Array();
var itemCount = document.getElementsByClassName("date");

for(var i = 0; i < itemCount.length; i++)
{
items = document.getElementById("date" + (i+1)).value;
}

return items;

for(var i = 0; i < itemCount.length; i++)
{
items = document.getElementById("date" + (i+1)).value;
var itemDtParts = item.split("-");
var itemDt = new Date(itemDtParts[2], itemDtParts[1] - 1, itemDtParts[0]);
if (itemDt.getDay() == 6 || itemDt.getDay() == 0) {
aler('weekend!');
}
}
}
</script>
[/javascript]

je ne sais pas trop comment procéder.

Je n'ai pas de messages d'erreur, du coup rien ne s'affiche dans la console et je reste avec ce code
qui ne fonctionne pas.

Pour tester j'ai mis une alert mais elle n'est même pas renvoyée.

L'idéal c'est que les jours du weekend soient transformés en lundi. que ce soit le samedi ou le dimanche.

Par avance merci pour votre aide.

Re: weekend et jours feriés

par moogli » 28 août 2012, 13:24

En type, oui sinon le zéro peux être confondu avec false ou null

Re: weekend et jours feriés

par schim59 » 28 août 2012, 12:57

=== égale en genre et en valeur

Re: weekend et jours feriés

par moogli » 28 août 2012, 11:56

yop plutot $numero = date("w", strtotime($ladate));

et si $numero === 0 ou $numero === 6 tu rejete (plus d'info dans la doc de la fonction date ;)

Attention à la syntaxe :)


@+