如何使用 $_GET 根据 URL 字符串加载内容?

新手问题:我有一个系统,要求用户在简单的表单(/form)上回答几个问题。一旦他们提交了答案,我希望另一个页面(/form/custom)根据他们的答案加载内容(“您可能会发现这很有趣:...”)。

用户填写的表单将数据发送到URL 字符串中的下一页:website.com/form/custom?name=Michael&question=yes&colour=blue 等。

我读过PHP 中的$_GET 变量,但我不确定如何使用它来调用定制内容。假设如果问题=是并且颜色=蓝色我想显示内容A、C和D;但如果问题=否且颜色=黄色,我想显示内容 B、E 和 F。有关如何编码的任何提示?预先非常感谢!


qq_花开花谢_0
浏览 172回答 3
3回答

偶然的你

$question = isset($_GET['question] ? trim($_GET['question']) : NULL;$colour   = isset($_GET['colour] ? trim($_GET['colour']) : NULL;现在您已经检查了颜色和问题是否通过 URL 传递,如果颜色和问题未传递,您已将默认值设置为NULL。if($question !== NULL  && $colour !== NULL){  if ($question === 'yes' && $colour   === 'blue') {    // logic to show content(A,B, D)  } else if ($question === 'no' && $colour   === 'yellow') {   //logic to show content(C,E, F)  }}这里我使用 ===检查 if 条件内的变量值,因为它将返回 TRUE if,例如:(考虑在第一个中首先检查if())$question 等于'yes',并且它们属于同一类型。

肥皂起泡泡

您好,如果我理解正确的话,首先在新页面上form/custom设置带有数据的变量 $question = isset($_GET['question]) ? trim($_GET['question']) : ''; ,然后使用简单的 if 语句加载您想要的内容if ($question === 'yes' && $color === 'blue') {    //showContent(A,B, D)} else if ($question === 'no' && $color === 'yellow') {   //ShowContent(C,E, F)}

湖上湖

if (isset($_GET['question'])) {    if ($_GET['question'] == 'A') {        //load A content    } elseif ($_GET['question'] == 'B') {        //load B content    } else {        //load C content    }}
打开App,查看更多内容
随时随地看视频慕课网APP