【问题标题】:$_GET value will not post to update record$_GET 值不会发布到更新记录
【发布时间】:2012-02-01 19:09:03
【问题描述】:

我正在使用单页提交表单来创建和编辑记录。如果我自己定义记录 ID,它会很好地创建记录并填充表单并更新它。

如果我尝试拉入 $_GET 值,它将不会更新。

这是我所拥有的:

if(isset($_GET['id'])) {
$id = $_GET['id'];
$guests = Guest::find_by_id($id);
} 
$message = "";
if(isset($_POST['submit'])) {
    $guest = new Guest();
    if (isset($_GET['id'])) {
        $guest->id = $id;
    }
    $guest->name = $_POST['guest_name'];
    $guest->info = $_POST['guest_info'];
    $guest->image_path = $_POST['guest_image_path'];
    $guest->sc_player = $_POST['guest_sc_player'];

    if($guest->update()) {
        $message = "Uploaded successfully.";
    } else {
        $message = join("<br />", $guest->errors);
    }
}

如果我将第二个 if 语句替换为 $guest-&gt;id = "14",它会起作用

【问题讨论】:

  • 你确定 $_GET['id'] 设置了吗?你试过 var_dump($_GET['id']) 吗?
  • 您的请求不能同时是 POST 和 GET 请求。两者是互斥的。
  • 我在页面某处回显了 $_GET['id'] 以测试它是否正常工作并返回正确的 id。
  • @meagar:如果我发帖到page.php?id=3 会怎样? ;)
  • 这里是html表单jsfiddle.net/TJPrn/2

标签: php mysql post get


【解决方案1】:

你的ID在哪里我哪里都看不到,在哪里设置的?

【讨论】:

  • 我设法通过将 id 添加到表单操作来使其工作,之前它只是 action="save_guest.php" 。并且id是通过header传入的。
  • 好,只要它有效,这就是我们在这里的原因,我们都有问题;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多