Php 从Flash更新数据库的结果
我想用flash更新数据库(文本输入) 这是我的php代码Php 从Flash更新数据库的结果,php,flash,actionscript-2,Php,Flash,Actionscript 2,我想用flash更新数据库(文本输入) 这是我的php代码 <?php mysql_pconnect ("localhost", "root", ""); mysql_select_db ("adaptasi"); $isi = isset($_POST['OutData']); $query2 = "UPDATE materi SET isi='$isi' WHERE id = 1"; $result2=mysql_query($query
<?php
mysql_pconnect ("localhost", "root", "");
mysql_select_db ("adaptasi");
$isi = isset($_POST['OutData']);
$query2 = "UPDATE materi SET isi='$isi' WHERE id = 1";
$result2=mysql_query($query2) or die("Query Failed : ".mysql_error());
?>
但数据库中的isi结果是“1”,而不是我在文本字段中输入的文本。
谢谢您的代码中有一些问题: 动作脚本2: 要使用对象发送数据,您必须将其作为其属性附加到该对象,如果您希望从服务器端脚本接收响应,可以使用,但如果您只想发送数据而不等待任何响应,则可以使用 假设您将使用
sendAndLoad()
函数,那么您的代码可以如下所示:
var url:String = 'http://www.example.com/update.php';
// the LoadVars object that will receive (load) a response from the server
var receiver:LoadVars = new LoadVars();
receiver.onLoad = function(success:Boolean)
{
if (success) {
trace(receiver.response); // gives for example : update successful
} else {
trace('error');
}
}
// the LoadVars object which will send (post) some data to the server
var sender:LoadVars = new LoadVars();
sender.id = txt_id.text;
sender.name = txt_name.text;
sender.sendAndLoad(url, receiver); // we don't set the method to POST because that's its default value
PHP:
正如许多评论中提到的,PHP函数用于验证变量是否已设置且不为空,它返回一个布尔值(TRUE
ofFALSE
),此时它将为TRUE
提供1
,为FALSE
提供``(空字符串)
在您的情况下,根据您的说法,我认为由于变量$\u POST['OutData']
显然已设置,isset($\u POST['OutData'])
为true,这将$isi
的值设置为1
,因此您将得到:
$query2 = "UPDATE materi SET isi='1' WHERE id = 1";
但根据您发布的代码,我认为您应该:
$query2 = "UPDATE materi SET isi='' WHERE id = 1";
现在回到我们当前的示例,我们将获得AS2脚本发送的两个POST变量(id和名称),以更新DB,然后如果数据已成功更新或未成功更新,则返回响应:
<?php
if(isset($_POST['id'] && isset($_POST['name']))
{
$id = $_POST['id'];
$name = $_POST['name'];
mysql_pconnect('localhost', 'root', '');
mysql_select_db('my_db');
$query = "UPDATE users SET name = '$name' WHERE id = $id";
$result = mysql_query($query);
if($result){
echo 'response=update successful';
} else {
echo 'response=update failed';
}
}
?>
嗯,您正在设置$isi=isset($\u POST['OutData'])
哪个布尔值被转换为1作为true
的字符串,您是否将$\u POST['OutData']作为文本?如何获取字符串@提格朗吉斯,克里希纳。。。我写了$isi=$\u POST['OutData'];它的返回'undefined'亲爱的isset($_POST['OutData'])像一个条件一样工作,因此它将返回true或false。所以你必须在$ISIThank@akmozo内连接其他字段的名称。你是最棒的,这是真正的工作。
<?php
if(isset($_POST['id'] && isset($_POST['name']))
{
$id = $_POST['id'];
$name = $_POST['name'];
mysql_pconnect('localhost', 'root', '');
mysql_select_db('my_db');
$query = "UPDATE users SET name = '$name' WHERE id = $id";
$result = mysql_query($query);
if($result){
echo 'response=update successful';
} else {
echo 'response=update failed';
}
}
?>