首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP在不同页面(表单)之间传值

问使用PHP在不同页面(表单)之间传值
EN

Stack Overflow用户
提问于 2013-09-04 01:44:16
回答 4查看 1.8K关注 0票数 1

我正在尝试从page1.php (用于将数据添加到数据库的表单)中的表单带值到page2.php (用于将IMG添加到数据库的表单)。我读了一大堆关于如何做到这一点的页面,但仍然无法理解。

代码语言:javascript
复制
<form name="formBrokerTour" class="login-form-addproperty" method="post"
  action="insertPropertyInfoWITHgeocode.php" onsubmit="return validateForm()">

然后我需要添加几个字段,地址,城市,邮政编码国家。下面是4种情况中的一种:

代码语言:javascript
复制
<td  width="125" class="formLable">Address</td>
<td width="269" class="formSquare">
   <input type="text" class="general_input" 
     name="address" id="nameText" width="269" >
</td>

the (相关部分)-如您所见,如果我写了一个地址,该地址会被添加到数据库中,所以我们不需要担心sql出错。如果我尝试通过会话(因为我有用户名在数据库中添加信息)或post/get将信息从页面1传递到页面2,则不会添加地址。有趣的是,正在添加用户名。

代码语言:javascript
复制
$username = htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');
$address = "123 abec st"; 

$query = "
  INSERT INTO my_image
  (name, size, type, file_path, username, address) 
  VALUES(?,?,?,?,?,?)";
$conn = $db->prepare($query);
if ($conn == TRUE) {
    $conn->bind_param("sissss", $myfile, $fileSize, $fileType, $path, $username,  $address);
    if (!$conn->execute()) {
      echo 'error insert';
    } else {
      echo 'Success!<br/>';
      echo '<img src="' . DISPLAY_PATH . $myfile . '"/>';
    }
}

正如我们在其他问题中看到的那样,我试图回应$_session等,但这是一个新的计算机人员的问题……我应该在哪里添加此信息?我在顶部的session_start中添加了它,就在SQL查询之前,但它在查询中不接受它。

and有一个提交按钮,里面有DB和地理编码的东西。它会发送到page3.php,询问用户是否要添加图像。如果是,则返回page2.php,如果不是索引。我对传递信息感到困惑。

EN

回答 4

Stack Overflow用户

发布于 2013-09-04 01:49:03

表单中的所有字段都是$_POST格式的。您可以使用以下命令提取地址

代码语言:javascript
复制
$address = $_POST['address'];

如果使用GET form操作或通过URL传递变量,则应使用$_GET。

我真的建议您查看教程站点或PHP书籍,因为这是您需要学习的基本知识之一。

票数 3
EN

Stack Overflow用户

发布于 2013-09-04 01:54:14

因为在查询中使用的是?而不是变量,所以bindParam的正确用法类似于$conn->bindParam(number_of_param, the_value);,其中number_of_param是要替换的?的编号。

您还可以将一个参数数组传递给$conn->execute()调用,如下所示,一次替换所有?:

代码语言:javascript
复制
        $conn = $db->prepare("INSERT INTO my_image(name, size, type, file_path, username, address) VALUES(?,?,?,?,?,?)");
        if ($conn == TRUE) {
            $result = $conn->execute(array($myfile, $fileSize, $fileType, $path, $username,  $address));
            if (!$result) {
                echo 'error insert';
            } else {
                echo 'Success!<br/>';
                echo '<img src="' . DISPLAY_PATH . $myfile . '"/>';
            }
        }

附注:我建议使用PDO::EXCEPTION风格的错误处理,并用try {} catch块包围您的数据库代码,因为它可以帮助标准化错误处理,但这完全取决于您。

票数 1
EN

Stack Overflow用户

发布于 2013-09-04 01:52:04

使用

代码语言:javascript
复制
$_POST['form input name']

所以

代码语言:javascript
复制
VALUE ($_POST['myfile'], $_POST['fileSize'],ect.)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18598403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档