在javascript是交互式的情况下,如何在php页面之间正确传递变量?

在javascript是交互式的情况下,如何在php页面之间正确传递变量?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我是这个领域的新手,目前正在小型电子商务网站上工作。因此,如果有人能给我任何建议或提示,或者将类似的问题与这个问题的答案联系起来,我将不胜感激 我知道这篇文章很长……然而,我想尽可能准确地分享我的情况,以便人们正确地理解我所面临的困境。这就是为什么它变成了长柱 我有一个流程和代码,你可以在下面看到 而且,我的问题是,我不知道如何使编辑按钮在revieworder.php页面中正确工作,而其他功能可以一起正常工作 所以,我的问题是,我怎样才能同时实现以下目标 当用户按下revieworder.ph

我是这个领域的新手,目前正在小型电子商务网站上工作。因此,如果有人能给我任何建议或提示,或者将类似的问题与这个问题的答案联系起来,我将不胜感激

我知道这篇文章很长……然而,我想尽可能准确地分享我的情况,以便人们正确地理解我所面临的困境。这就是为什么它变成了长柱

我有一个流程和代码,你可以在下面看到

而且,我的问题是,我不知道如何使编辑按钮在revieworder.php页面中正确工作,而其他功能可以一起正常工作

所以,我的问题是,我怎样才能同时实现以下目标

当用户按下revieworder.php页面中的“编辑”按钮时,将变量从revieworder.php传递到options.php和deliveryinformation.php页面

用户从revieworder.php页面跳转到deliveryinformation.php页面后,用于国家选择的javascript仍然可以通过更改国家来正常工作,javascript返回从DB检索的shippingfee,具体取决于同一页面deliveryinformation.php中所选的国家

shippingfee、totalfee和country数据在以下流程中正确传递 revieworder.php→ delieveryinformation.php→ revieworder.php revieworder.php→ options.php→ delieveryinformation.php→ revieworder.php

<?php
  $options = $_POST['options'];
  $request = $_POST['request'];
  $size = $_POST['size'];
  $name = $_POST['name'];
  $country = $_POST['country'];
  $shippingfee = $_POST['shippingfee'];
  $totalfee = $_POST['totalfee'];
?>
<html>
..
<form id="forminreviewpage" name="confirmation" method="POST">
  <input type="hidden" name="options" value="<?= $options; ?>"/>
  <input type="hidden" name="request" value="<?= $request; ?>"/>
  <input type="hidden" name="size" value="<?= $size; ?>"/>
  <input type="hidden" name="name" value="<?= $name; ?>"/>
  <input type="hidden" name="country" value="<?= $country; ?>"/>
  <input type="hidden" name="shippingfee" value="<?= $shippingfee; ?>"/>
  <input type="hidden" name="totalfee" value="<?= $totalfee; ?>"/>
</form>
<div class="row">
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $options; ?></p>
      <p><?= $request; ?></p>
      <p><?= $size; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('options.php')">Edit</button>
    </div>
  </div>
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $name; ?></p>
      <p><?= $country; ?></p>
      <p><?= $shippingfee; ?></p>
      <p><?= $totalfee; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('deliveryinformation.php')">Edit</button>
    </div>
  </div>
  <div>
    <button id="orderbutton" onclick="submitForm('ordered.php')">Order</button></br>
  </div>
</div>
你能教我怎么存档吗

我的网站流量在这里

first pageoptions.php:用户可以选择他们想要订购的产品的详细信息

第二页deliveryinformation.php:用户应该输入交付信息,例如他们的姓名、地址等。此外,通过更改国家/地区,javascript将返回从DB检索的shippingfee,具体取决于同一页面deliveryInformation.php中选择的国家/地区

第3页ReviewOrder.php:用户可以查看产品的详细信息和交付信息。用户可以按“编辑”按钮返回options.php页面或deliveryinformation.php页面以更改其输入

代码

options.php

<form name="selection" method="POST" action="deliveryinformation.php">  
  <div class="form-group">
    <select id="dropdownforoption" name="options" class="form-control">
      <option value="" select="selected">Option</option>
      <option value="babysname">Baby's name</option>
    </select>
  </div>
  <div>
    <textarea id="request" name="request" placefolder="please type your request"></textarea>
  </div>
  <div class="form-group">
    <select id="dropdownforsize" name="size" class="form-control">
      <option value="" select="selected">Size</option>
      <option value="27cm x 24cm">27cm x 24cm</option>
      <option value="specialsize">special size</option>
    </select>
  </div>
  <button id="delivery" type="submit" onclick="return onclickvalidation()">Proceed to develivery information</button>
</form>  
revieworder.php

<?php
  $options = $_POST['options'];
  $request = $_POST['request'];
  $size = $_POST['size'];
  $name = $_POST['name'];
  $country = $_POST['country'];
  $shippingfee = $_POST['shippingfee'];
  $totalfee = $_POST['totalfee'];
?>
<html>
..
<form id="forminreviewpage" name="confirmation" method="POST">
  <input type="hidden" name="options" value="<?= $options; ?>"/>
  <input type="hidden" name="request" value="<?= $request; ?>"/>
  <input type="hidden" name="size" value="<?= $size; ?>"/>
  <input type="hidden" name="name" value="<?= $name; ?>"/>
  <input type="hidden" name="country" value="<?= $country; ?>"/>
  <input type="hidden" name="shippingfee" value="<?= $shippingfee; ?>"/>
  <input type="hidden" name="totalfee" value="<?= $totalfee; ?>"/>
</form>
<div class="row">
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $options; ?></p>
      <p><?= $request; ?></p>
      <p><?= $size; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('options.php')">Edit</button>
    </div>
  </div>
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $name; ?></p>
      <p><?= $country; ?></p>
      <p><?= $shippingfee; ?></p>
      <p><?= $totalfee; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('deliveryinformation.php')">Edit</button>
    </div>
  </div>
  <div>
    <button id="orderbutton" onclick="submitForm('ordered.php')">Order</button></br>
  </div>
</div>
非常感谢您的帮助和问候,
Hiro

使用会话将使站点内的页面能够访问数据“池”——只要您自己设置会话变量。这可以很容易地在PHP中完成-关于W3的基本细节,一旦你掌握了基本概念,网络上还有很多其他站点提供了简单的会话演练

我不太清楚你在第二个问题上问的是什么。您是否希望第二页自动知道用户的国家/地区?如果是这样,可以通过在上一页分配会话变量或使用地理位置来实现-请参阅帮助

至于问题三,实现适当的流是一个架构问题——您需要确保用户访问的页面的结构只允许您想要的直通流。如果不花几个小时处理代码,我可以想象,当一个页面成功“完成”并准备好移动到下一个页面时,通过分配会话变量也可以实现这一点

会话功能强大,可以让您控制大量用户数据,以简化他们在整个使用期间对站点的体验。不过,请注意您记录的会话数据-它应该始终是尽可能少的数据量,并且不包含任何可能损害用户个人详细信息或其帐户的数据-即,不要存储他们的用户名和密码,如果他们通过身份验证,只需存储int值“1”或“0”


希望能有所帮助。

我最好的建议是使用CodeIgniter或Laravel@fatman,非常感谢你给我的建议。我将看到Codelgniter和Laravel是如何工作的,以及其他人推荐我的课程。谢谢另外,您将其标记为“javascript”和“jquery”,但随后建议不要使用javascript。非常感谢您真诚的回答。我将通过W3页面学习课程,因为问题1和问题3似乎都可以通过课程实现。关于第二个问题,我在想,如果我们能通过$country valuee.g。从revieworder.php页面到deliveryinformation.php页面,并在第一个选项标记中设置值,例如
<?php
  $options = $_POST['options'];
  $request = $_POST['request'];
  $size = $_POST['size'];
  $name = $_POST['name'];
  $country = $_POST['country'];
  $shippingfee = $_POST['shippingfee'];
  $totalfee = $_POST['totalfee'];
?>
<html>
..
<form id="forminreviewpage" name="confirmation" method="POST">
  <input type="hidden" name="options" value="<?= $options; ?>"/>
  <input type="hidden" name="request" value="<?= $request; ?>"/>
  <input type="hidden" name="size" value="<?= $size; ?>"/>
  <input type="hidden" name="name" value="<?= $name; ?>"/>
  <input type="hidden" name="country" value="<?= $country; ?>"/>
  <input type="hidden" name="shippingfee" value="<?= $shippingfee; ?>"/>
  <input type="hidden" name="totalfee" value="<?= $totalfee; ?>"/>
</form>
<div class="row">
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $options; ?></p>
      <p><?= $request; ?></p>
      <p><?= $size; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('options.php')">Edit</button>
    </div>
  </div>
  <div class="col-md-4">
    <div class="col-md-4">
      <p><?= $name; ?></p>
      <p><?= $country; ?></p>
      <p><?= $shippingfee; ?></p>
      <p><?= $totalfee; ?></p>
    </div>
    <div class="col-md-4">
      <button id="editbutton" onclick="submitForm('deliveryinformation.php')">Edit</button>
    </div>
  </div>
  <div>
    <button id="orderbutton" onclick="submitForm('ordered.php')">Order</button></br>
  </div>
</div>