我有一个 Flash 表单,它将用户填写的月度报告发送到 php 文件,该文件将其发送到 MS SQL 数据库。我遇到的这个问题是任何大于 1300 个字符的输入到 Flash 表单中都将不起作用。如果我将文本量减少到 1300 个字符或更少,它会将其发送到 php 和数据库就好了。我的研究表明,一个 flash 变量应该能够处理 65,000 个字符,当我将输出从 flash 跟踪到 php 时,所有数据都在跟踪。但是,它没有被发送到 php。我正在使用 LoadVars 通过 _GET 发送数据。那么这是一个 php 问题,还是一个 flash 问题?我运行了一个 php 信息页面,我的 max_post 设置为 10M,应该足以处理这个负载。我不确定为什么它不能处理大于 1300 个字符的任何内容。
受此影响的变量是 testEvlauation、projects、support 和 programManagement 变量。我需要他们向 php 文件发送至少 8000 个字符。对此的任何帮助将不胜感激。
闪码:
on (release) {
sendData = new LoadVars();
sendData.contractor = contractor.text;
sendData.name = name.text;
sendData.contractNum = contractNum.text;
sendData.performance = performance.text;
sendData.manager = manager.text;
sendData.activity = activity.text;
sendData.taskNum = taskNum.text;
sendData.date = date.text;
sendData.testEvaluation = testEvaluation.text;
sendData.projects = projects.text;
sendData.support = support.text;
sendData.programManagement = programManagement.text;
sendData.send("Flash/php/MRform.php","_blank","GET");
trace(sendData.support);
}
PHP代码:
//MS SQL SERVER CONNECTION PERAMETERS
$serverName = "lsv-fs-jepac1\JEPAC";
$uid = "SQLLogin";
$pwd = "XXXXXXXXXXXXXXXXXXXXXX";
$connectionInfo = array("UID" => $uid, "PWD" => $pwd, "Database"=>"Requests");
/* Connect using MS SQL Credentials. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection Established.\n";
}
else {
echo "connection could not be established.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Set up the parameterized query.*/
$name =$_GET['name'];
$contractor =$_GET['contractor'];
$contractnum =$_GET['contractNum'];
$performance =$_GET['performance'];
$manager =$_GET['manager'];
$activity =$_GET['activity'];
$taskNum =$_GET['taskNum'];
$date =$_GET['date'];
$testEvaluation =$_GET['testEvaluation'];
$projects =$_GET['projects'];
$support =$_GET['support'];
$programManagement =$_GET['programManagement'];
$tsql = "INSERT INTO dbo.MRSup
(Name,
Contractor,
ContractNum,
Performance,
Manager,
Activity,
TaskNum,
Date,
TestEvaluation,
Projects,
Support,
ProgramManagement)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
// Set Parapter Values.
$params = array($name, $contractor, $contractnum, $performance, $manager, $activity, $taskNum, $date, $testEvaluation, $projects, $support, $programManagement);
$stmt = sqlsrv_query( $conn, $tsql, $params);
if( $stmt ) {
echo "Row successfully inserted.\n";
}
else {
echo "Row instertion failed.\n";
die (print_r( sqlsrv_errors(), true));
}
//free statements
sqlsrv_free_stmt( $stmt);
sqlsrv_close ($conn);