Inhaltsverzeichnis
回复讨论(解决方案)
Heim Backend-Entwicklung PHP-Tutorial 大家瞅瞅,eval()

大家瞅瞅,eval()

May 29, 2018 am 09:15 AM
code eval

xu版主,你遇见过没,代码在测试服上跑的没问题,然后正式服用的2008+php5.4+fastcgi,有点怪异,

回复讨论(解决方案)

无代码,无真相

无代码,无真相

<?php  
/**  
  * wechat php test  
  */  
 
class MpapiAction extends Action{  
private $id;  
 
public function getId(){  
return $id = $_REQUEST[&#39;appid&#39;];  
}  
public function index(){  
Log::write(&#39;eval是否开启:&#39;.function_exists(&#39;eval&#39;));  
Log::write("remote_addr:".$_SERVER[&#39;REMOTE_ADDR&#39;].(strpos($_SERVER[&#39;REMOTE_ADDR&#39;], "101.226"))?" from weixin":"unknow ip");  
Log::write("query_string:".$_SERVER[&#39;QUERY_STRING&#39;]);  
header("Content-type:text/html;charset=utf-8");  
$str = md5($_REQUEST[&#39;appid&#39;]."weike86.com");  
define("TOKEN", $str);  
Log::write(&#39;TOKEN::&#39;.$str);  
$this->valid();  
$wechat = new WechatAction();  
$wechat->responseMsg($_REQUEST[&#39;appid&#39;]);  
}  
 
public function valid(){  
        $echoStr = $_GET["echostr"];  
        //valid signature , option  
        if($this->checkSignature()){  
         Log::write(&#39;$echoStr&#39;.$echoStr);  
         Log::write(&#39;HTTP_RAW_POST_DATA:&#39;.$GLOBALS["HTTP_RAW_POST_DATA"]);  
         echo $echoStr;  
         //exit;  
       }  
    }  
      
private function checkSignature(){  
        // you must define TOKEN by yourself  
        if (!defined("TOKEN")) {  
            throw new Exception(&#39;TOKEN is not defined!&#39;);  
        }  
          
        $signature = $_GET["signature"];  
        $timestamp = $_GET["timestamp"];  
        $nonce = $_GET["nonce"];  
          
$token = TOKEN;  
$tmpArr = array($token, $timestamp, $nonce);  
        // use SORT_STRING rule  
sort($tmpArr, SORT_STRING);  
$tmpStr = implode( $tmpArr );  
$tmpStr = sha1( $tmpStr );  
 
if( $tmpStr == $signature ){  
return true;  
}else{  
return false;  
}  
}  
 
}  
 
?>
Nach dem Login kopieren

无代码,无真相

正式服务器返回的值(异常)    
测试服务器正常响应微信服务器返回的值(正常)  

你应该贴出出错行附近的代码!

那天弄出来了,忘记给出答案了。就是有BOM阻止了页面的正常响应,网上有php的类,还有清除bom工具

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was bedeutet Auswertung in Python? Was bedeutet Auswertung in Python? May 22, 2019 pm 03:18 PM

eval bedeutet „Auswertung“ und ist eine in Python integrierte Funktion, die verwendet wird, um einen Zeichenfolgenausdruck auszuführen und das Berechnungsergebnis des Ausdrucks zurückzugeben, d. h. beim Zuweisen einer Variablen ist die Darstellung auf der rechten Seite des Gleichheitszeichens im Format einer Zeichenfolge geschrieben. Der Rückgabewert ist das Ergebnis dieses Ausdrucks. Syntax „eval(expression[, globals[, locals]])“.

So deaktivieren Sie die Auswertung in PHP unter Win So deaktivieren Sie die Auswertung in PHP unter Win Oct 31, 2022 am 09:33 AM

So deaktivieren Sie eval unter Win: 1. Laden Sie „PHP_diseval_extension“ herunter. 2. Suchen Sie das aktuell vom Server verwendete PHP. 4. Fügen Sie den Code „extension=diseval.so“ hinzu. Starten Sie den Dienst neu.

Bearbeiten Sie Ihr Unity-Projekt in Visual Studio Code und schon können Sie loslegen Bearbeiten Sie Ihr Unity-Projekt in Visual Studio Code und schon können Sie loslegen Aug 08, 2023 am 10:21 AM

Microsoft hat eine Vorschauversion der Unity-Erweiterung für Visual Studio Code veröffentlicht. Mit dieser neuen Unity-Erweiterung können Sie Unity-Spiele schreiben und debuggen. Diese neue Unity-Erweiterung bringt einige beliebte Funktionen, die bereits in Visual Studio und Visual Studio Tools für Unity verfügbar sind, und macht C# in Visual Studio Code für die Unity-Entwicklung besser. Derzeit bietet die Unity-Erweiterung für VSCode Folgendes: Einen Unity-Debugger zum Debuggen Ihres Unity-Editors und Unity-Players. Unity-spezifischer C#-Analysator und Refactoring. Uni

Eine einfache Erklärung der Verwendung von eval in Python Eine einfache Erklärung der Verwendung von eval in Python Mar 25, 2024 pm 02:08 PM

In Python wird die Funktion eval() verwendet, um einen String-Ausdruck auszuführen und sein Ergebnis zurückzugeben. Es nimmt eine Zeichenfolge, die einen Ausdruck enthält, als Parameter und wertet den Ausdruck aus. Die Funktion eval() ist leistungsstark, es sollte jedoch beachtet werden, dass sie jeden gültigen Python-Ausdruck ausführt, der in der Zeichenfolge enthalten ist. Daher sollten Sie bei ihrer Verwendung die Annahme externer Eingabezeichenfolgen vermeiden, um Sicherheitslücken zu vermeiden.

Was ist Eval in Python? Was ist Eval in Python? Aug 08, 2023 pm 05:07 PM

eval ist eine in Python integrierte Funktion, die verwendet wird, um Zeichenfolgen als Codes zu analysieren und auszuführen und die Ausführungsergebnisse zurückzugeben. Da die Funktion „eval“ beliebigen Python-Code ausführen kann, müssen Sie bei der Verwendung der Funktion „eval“ sorgfältig auf Sicherheitsaspekte achten. Wenn Sie der Funktion „eval“ eine nicht vertrauenswürdige Zeichenfolge übergeben, kann dies zu Sicherheitsproblemen wie Code-Injection führen .

So verwenden Sie die Python-Bewertungsfunktion So verwenden Sie die Python-Bewertungsfunktion Jun 04, 2023 am 09:19 AM

Pythons eval() Wir können das integrierte Pythoneval()[1] verwenden, um Ausdrücke aus stringbasierten oder kompilierten Code-basierten Eingaben dynamisch auszuwerten. Wenn wir einen String an eval() übergeben, analysiert die Funktion ihn, kompiliert ihn zu Bytecode[2] und wertet ihn als Python-Ausdruck aus. Wenn wir jedoch eval() mit einem kompilierten Codeobjekt aufrufen, führt die Funktion nur den Berechnungsschritt aus, was sehr praktisch ist, wenn wir eval() mehrmals mit derselben Eingabe aufrufen. Pythons eval() ist wie folgt definiert. eval(expression[,globals[,locals]]) diese Funktion

HTML und Code: Ein genauerer Blick auf die Terminologie HTML und Code: Ein genauerer Blick auf die Terminologie Apr 10, 2025 am 09:28 AM

HtmlisaspecifictypeofcodeFocusedonstructuringuringwebcontent, während "Code" breitincludesluages ​​-ähnlichjavaScriptandpythonforfunctionality.1) htmldefineswebpageStructureStags.2) "Code" cometesaWiNrangeOfLanguagesForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForForfirsInsForfunctionNacts

EverValue Coin (EVAL) wird an der XT Exchange gelistet und ermöglicht Benutzern die Erweiterung ihrer Bitcoin-Bestände EverValue Coin (EVAL) wird an der XT Exchange gelistet und ermöglicht Benutzern die Erweiterung ihrer Bitcoin-Bestände Oct 07, 2024 pm 03:30 PM

SINGAPUR, 7. Oktober 2024 (GLOBE NEWSWIRE) – Wir freuen uns, die bevorstehende Notierung von EVAL (EverValue Coin) an der XT Exchange bekannt zu geben.

See all articles