2016-09-28 11 views
1
<?php 
if($_GET['st'] !=''){ 
$st= $_GET['st']; 
?> 
    <script> 
    var st = <?php echo $st; ?> 
    if(st !=''){ 
     console.log('got function here'); 
    } 
    </script> 
<?php }?> 

における条件のエラーは、私は$ stは空に等しくない場合表示したいならば、何か他のものは何かを行うのですか与えるコードが、その与えエラーJavaScriptコンソール

pro.php?st=foo:13 Uncaught SyntaxError: Unexpected token if.

+1

代わりに 'st = <?php echo $ st; ?> '' st = "<?php echo $ st;?>"; ' –

答えて

0

これを試します
<?php 
    if($_GET['st'] !=''){ 
    $st= $_GET['st']; 
?> 
<script> 
    var st = "<?php echo $st; ?>"; // assign var st properly with ("st";) 
    if(st !=''){ 
    console.log('got function here'); 
    }  
</script> 
<?php 
} 
?> 
+0

を使用していただきありがとうございます。 :) – Nadeem

0

st = <?php echo $st; ?>の代わりにst = "<?php echo $st; ?>";を使用する場合は、PHPとJavaScriptのステートメントを閉じる必要があります。

<?php 
if($_GET['st'] !=''){ 
$st= $_GET['st']; 
?> 
    <script> 
    var st = "<?php echo $st; ?>"; 
    if(st !=''){ 
     console.log('got function here'); 
    } 
    </script> 
<?php }?> 
0

あなたは、引用符の内側にそのようなことstを保存する必要があります。

var st = '<?=$st?>'; 

をしかし、その前に、あなたはまた、!empty()条件とともに$_GET['st']セットかのどちらかをチェックするためisset()を使用する必要があります。

例:あなたはすでにあなたがjavascriptで再びそれを使用している理由がわからない、PHPに空の値をチェックしている、ということ

<?php 
if(isset($_GET['st']) && !empty($_GET['st'])){ 
    $st = $_GET['st']; 
?> 
    <script> 
    var st = '<?=$st?>'; 
    if(st != ''){ 
     console.log('got function here'); 
    } 
    </script> 
<?php 
} 
?> 

注意。

関連する問題