0

QUERY_STRING を取得しようとして、いくつかのコードで問題が発生していますが、コンソールのエラーを見ると、行が原因と思われる内部エラー 500 が返されます。getReqStr = env_vars['QUERY_STRING']

これを修正する方法はありますか?

import MySQLdb
import cgi, cgitb
from urlparse import urlparse

def index(req):

    req.add_common_vars()
    env_vars = req.subprocess_env
    getReqStr = env_vars['QUERY_STRING']           
    getReqArr = getReqStr.split('&')               
    getReqDict = {}

    for item in getReqArr:                          
       tempArr = item.split('=')                    
       getReqDict[tempArr[0]] = tempArr[1]
 
    dtbox = getReqDict['dt']
    tmbox = getReqDict['tm']

    con = MySQLdb.connect('localhost', 'root', '', 'mydb')

    with con:
        cur = con.cursor(MySQLdb.cursors.DictCursor)
        st = "SELECT tmp, watts FROM currentcost WHERE dt ='" + dtbox + "' and tm like '" + tmbox + "%'"
        cur.execute (s)
        rows = cur.fetchall()

        x=""
        y=""
        for row in rows:
            x=x+row["watts"]+","
            y=y+row["tmp"]+","

    x="data:["+x+"]"
    y="data:["+y+"]"

    con.close()

    req.write(st)

編集。

Chrome のコンソールから返される応答は次のとおりです。

MOD_PYTHON ERRORProcessId: 3424Interpreter: '127.0.1.1'ServerName: '127.0.1.1'DocumentRoot: '/var/www'URI: '/currentcost.py'Location: NoneDirectory: '/var/www/'Filename: '/var/ www/currentcost.py'PathInfo: ''フェーズ: 'PythonHandler'Handler: 'mod_python.publisher'Traceback (最新の呼び出しが最後): ファイル "/usr/lib/python2.7/dist-packages/mod_python/importer.py "、1537 行、HandlerDispatch default=default_handler、arg=req、silent=hlist.silent) ファイル "/usr/lib/python2.7/dist-packages/mod_python/importer.py"、1229 行、_process_target 結果 = _execute_target(config, req, object, arg) ファイル "/usr/lib/python2.7/dist-packages/mod_python/importer.py", 行 1128,in _execute_target result = object(arg) File "/usr/lib/python2.7/dist-packages/mod_python/publisher.py", line 204, in handler module = page_cache[req] File "/usr/lib/python2. 7/dist-packages/mod_python/importer.py」の 1059 行目getitem return import_module(req.filename) File "/usr/lib/python2.7/dist-packages/mod_python/importer.py", line 296, in import_module log, import_path) File "/usr/lib/python2.7/ dist-packages/mod_python/importer.py", line 680, in import_module execfile(file, module. dict ) File "/var/www/currentcost.py", line 17 getReqStr = env_vars['QUERY_STRING'] ' 後の URL ? ^SyntaxError: 文字列リテラルのスキャン中に EOLMODULE CACHE DETAILSAccessed: Thu Sep 26 09:18:30 2013Generation: 0_mp_545c0d0056a74a40503ad1da7dbb26e2 { FileName: '/var/www/currentcost.py' Instance: 1 [IMPORT] Generation: 0 [ERROR] Modified: Thu 9 月 26 日 09:10:57 2013}

4

1 に答える 1