这工作正常:
$username= $_GET["username"];
$query= "INSERT INTO test (latitude) VALUES ('$username')";
mysql_query($query) or die (mysql_error("error"));
mysql_close();
这不起作用:
if(!isset($_POST['submit']))
{
}
else
{
$username= $_GET["username"];
$query= "INSERT INTO test (latitude) VALUES ('$username')";
mysql_query($query) or die (mysql_error("error"));
mysql_close();
}
如果 $username 设置为 get 以外的值,例如 '7',它就可以工作。
从目标 c 中检索值的 GET。如果我不把它放在 if 语句中,它只会在我的数据库中输入数百次。如果我把它放在'if'语句中,它只会输入一次,但值将为零。我完全被难住了。任何帮助都会很棒。
编辑:我认为由于我得到的答案我没有很好地解释。澄清一下:我正在使用 POST 发布 user_id、answer_body。我使用 GET 作为从核心位置导入纬度和经度的一种方式(即使我将其命名为用户名,它也是纬度)。我希望他们都进入同一个条目,这就是我将 GET 绑定到 isset_POST 的原因。此外,当 GET(username) 单独使用时,使用 INSERT 查询,它将在我的数据库中产生数百个重复项。这是objective-C脚本:
//sends whatever username is set to, to database
float username = location.coordinate.latitude;
NSString *theValue = [NSString stringWithFormat:@"%f", username];
NSString *hostStr =[NSString stringWithFormat:@"http://mysite.com/page.php?username=%@", theValue];
NSData *dataURL = [NSData dataWithContentsOfURL: [ NSURL URLWithString: hostStr ]];
NSString *serverOutput = [[NSString alloc] initWithData:dataURL encoding: NSUTF8StringEncoding];
NSLog(@"Server output: %@", serverOutput);
表单代码为:
<form action="gpstestertwo.php" method="post"><center>
$<input type="text" name="answer_body" maxlentgh= "5" style="height:3em;"/>
<input type="submit" value="submit" name="submit" style="height:2em; width:5em; font-size:19px "
/>
</center>
</form>