首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Javascript的执行不会停止PHP的执行?

问为什么Javascript的执行不会停止PHP的执行?
EN

Stack Overflow用户
提问于 2012-10-08 21:37:24
回答 1查看 1K关注 0票数 0

我写的一个脚本遇到了麻烦。

下面是整个脚本。但问题只涉及2行。

事实上,我有一个PHP条件,如果它被遵守,它应该显示一个警告,如果不是,它应该执行以下脚本。

在最后,我有一个标题位置,可以让用户返回到上一页。

问题是,它不显示警报,它直接让用户返回。我想让用户点击“确定”,以使脚本继续。我有什么办法可以做到这一点吗?

代码语言:javascript
复制
<?php
$sql="SELECT SUM(montant) as montantfactures, n_doss
      FROM  `factures` 
      WHERE `n_doss`='".mysql_real_escape_string($_GET['n_doss'])."'
      GROUP BY `n_doss`";

$result=mysql_query($sql) or die;
while($data=mysql_fetch_assoc($result))
{
    $rqt="SELECT `interets`.*,
                 `les_taux`.*,
                 `decompte`.`principal_s`
          FROM   `interets`
          INNER JOIN `les_taux` ON `interets`.`type`=`les_taux`.`type`
          INNER JOIN `decompte` ON `interets`.`n_doss`=`decompte`.`n_doss`
          WHERE `interets`.`n_doss`='".$data['n_doss']."' 
          GROUP BY `date_modif` DESC
          LIMIT 1";
    $resultat=mysql_query($rqt) or die;
    $donnees=mysql_fetch_assoc($resultat);

    {$datefin=$donnees['date_fin'];}
    $datedepart=$donnees['date_depart'];
    if($donnees['date_fin']==date('Y-m-d'))
    {
        echo "<script type=\"text/javascript\">alert(\"les interets sont deja a jour\")</script>";
    }
    else
    {
        if($donnees['type']=='tc')
        {

            if($donnees['montant']==0)
            {

                $taux=($donnees['valeur']*1);
                $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                $interets=(($data['montantfactures']-$donnees['principal_s'])*$nbjours*$taux)/(365*100);
                $nouveauinterets=$donnees['montant']+$interets ;
                $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'
                    ";
                $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;


            }

            else
            {

                $taux=($donnees['valeur']*1);
                $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                $interets=(($data['montantfactures']-$donnees['principal_s'])*1*$taux)/(365*100);
                $nouveauinterets=$donnees['montant']+$interets ;
                $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;

            }
        }
        elseif($donnees['type']=='tleg')
        {

            if($donnees['montant']==0)
            {
                if($donnees['operateur']=="x")
                {
                    $taux=($donnees['valeur']*$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*$nbjours*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
                elseif($donnees['operateur']=="+")
                {
                    $taux=($donnees['valeur']+$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*$nbjours*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
            }
            else
            {
                if($donnees['operateur']=="x")
                {
                    $taux=($donnees['valeur']*$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*1*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
                elseif($donnees['operateur']=="+")
                {
                    $taux=($donnees['valeur']+$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*1*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;

                }
            }
        }
        elseif($donnees['type']=='tbce')
        {

            if($data['montantfactures']==0)
            {
                if($donnees['operateur']=="x")
                {
                    $taux=($donnees['valeur']*$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*$nbjours*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
                elseif($donnees['operateur']=="+")
                {
                    $taux=($donnees['valeur']+$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*$nbjours*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
            }
            else
            {

                if($donnees['operateur']=="x")
                {
                    $taux=($donnees['valeur']*$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*1*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
                elseif($donnees['operateur']=="+")
                {
                    $taux=($donnees['valeur']+$donnees['variable']);
                    $nbjours=round((strtotime($datefin) - strtotime($datedepart))/(60*60*24)-1);
                    $interets=(($data['montantfactures']-$donnees['principal_s'])*1*$taux)/(365*100);
                    $nouveauinterets=$donnees['montant']+$interets ;
                    $itc="UPDATE `interets` SET
                    montant     =   '".$nouveauinterets."',
                    date_fin= NOW() WHERE n_doss='".$donnees['n_doss']."'";
                    $rtq    =   mysql_query($itc) or die(__LINE__.mysql_error().$itc);
                    echo "<img src='images/tick_48.png' width='24'> Int&eacute;r&ecirc;ts correctement mis &agrave; jour pour le dossier n&deg;".$donnees['n_doss'].'<br>' ;
                }
            }
        }
    }
}
header('Location: ' . $_SERVER['HTTP_REFERER'] );
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-08 21:40:39

Javascript无法停止php执行!javascript运行在客户端(浏览器),php运行在服务器端。如果你写下标题(‘Location:’.$_SERVER‘’HTTP_REFERER‘);,它将始终将您重定向到那里。

如果我是你,我会修改这一行并添加以下内容:

代码语言:javascript
复制
echo "<script type=\"text/javascript\">alert(\"les interets sont deja a jour\"); window.location = $_SERVER['HTTP_REFERER']
</script>"; 

当然,还要去掉头部位置..

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12782908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档