2016-03-24 16 views
0

Meine Funktionen, es funktioniert:PHP Aufruf Skriptfunktion, mit Rückgabewert - Uncaught Syntaxerror: unerwartetes Token ILLEGAL

<script> 
function createCookie(name,value,sec) { 
if (sec) { 
    console.log('createCookie: '+name+', '+value+', '+sec); 
    var date = new Date(); 
    date.setTime(date.getTime()+(sec*1000)); 
    var expires = "; expires="+date.toGMTString(); 
} 
else var expires = ""; 
document.cookie = name+"="+value+expires+"; path=/"; 
} 

function readCookie(name) { 
var nameEQ = name + "="; 
var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
     var c = ca[i]; 
     while (c.charAt(0)==' ') c = c.substring(1,c.length); 
     if (c.indexOf(nameEQ) == 0) 
     { console.log('readCookie: '+name+',value: '+c.substring(nameEQ.length,c.length)); 
      return c.substring(nameEQ.length,c.length); 
     } 
    } 
    console.log('readCookie: '+name+', NULL'); 
    return null; 
} 
</script> 

Aufruf der bouth Arbeit (wie ich in der Konsole sehen)

<? 
echo '<script type="text/javascript">createCookie("'.$cookie_random_photo.'","'.$randf.'",60);</script>'; 

echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>'; 
?> 

aber wenn ich Ausgangs sondieren, stellen diese Uncaught Syntaxerror: unerwartete Token ILLEGAL

<? 
ob_start(); 
echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>'; 
$returned_value = ob_get_contents(); 
ob_end_clean(); 
?> 

oder

<? 
ob_start(); 
echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>'; 
$returned_value = ob_get_clean(); 
?> 

Dieser Fehler erzeugen und Bildschirm ouput "');“wird readCookie() nicht aufgerufen.

Wie richtig

VM119792:1 Uncaught SyntaxError: 
Unexpected token ILLEGAL 
c.extend.globalEval @ jquery.js:29 
Qa @ jquery.js:16 
c.extend.each @ jquery.js:30 
c.fn.extend.domManip @ jquery.js:110 
c.fn.extend.append @ jquery.js:103 
c.fn.extend.html @ jquery.js:107c.ajax.complete @ jquery.js:120 
d @ jquery.js:124 
x.onreadystatechange @ jquery.js:129 
+5

öffnen erzeugte html/js und sehen, was da los ist. –

+0

Können Sie bitte den vollständigen Fehler posten. Ist es definitiv ein PHP-Fehler? – Chris

+1

'Uncaught SyntaxError: Unerwartetes Token ILLEGAL' ist eine JavaScript-Fehlermeldung. – Quentin

Antwort

0

Wahrscheinlich ist dies $ returned_value?

EDIT voll js Fehler bekommen etwas mit dem charset zu tun von Server und Client. können Sie charset = „uTF-8“, um den Skript-Tag wie unten und sehen Sie hinzufügen, wenn dies das Problem löst?

echo '<script type="text/javascript" charset="utf-8">readCookie("'.$cookie_random_photo.'");</script>'; 
erinnern

auch tatsächlich drucken Die Ausgabe

<? 
    ob_start(); 
    echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>'; 
    $returned_value = ob_get_contents(); 
    ob_end_clean(); 
    echo $returned_value; // <-- Only this will echo the contents back to the client. 
?> 
Verwandte Themen