根据php值使用查询

时间:2015-12-20 09:50:59

标签: php mysql

我是PHP的新手。希望有人能帮助我:)。

我有一个页面可以编辑3种不同语言的食谱列表,在我的数据库中,我将它们标记为ES表示西班牙语,EN表示英语,FR表示法语。

有没有办法根据用户选择使用特定查询?我想将值传递给URL

<p><a class="btn btn-success" href="recetas.php?ES" role="button">Editar &raquo;</a>
   <a class="btn btn-success" href="recetas.php?EN" role="button">Edit &raquo;</a>
   <a class="btn btn-success" href="recetas.php?FR" role="button">Éditer &raquo;</a></p>

提前致谢:) 此致

3 个答案:

答案 0 :(得分:3)

使用命名的URL参数,如 lang ,如下所示:

href=recetas.php?lang=ES

然后,您可以使用$_GET['lang']

在PHP端处理它

我建议使用会话,因此至少在用户会话期间保留该信息。

示例PHP代码:

<?php
    // use sessions to keep track of user's language choice
    session_start();
    if (isset($_GET['lang'])) {
        // set user's language if it was passed via URL
        $_SESSION['lang'] = $_GET['lang'];
    };
    if (!isset($_SESSION['lang'])) {
        // ask for language if choice has not yet been made
?>
    <p>
        <a class="btn btn-success"
           href="recetas.php?lang=ES" role="button">Editar &raquo;</a>
        <a class="btn btn-success"
           href="recetas.php?lang=EN" role="button">Edit &raquo;</a>
        <a class="btn btn-success"
           href="recetas.php?lang=FR" role="button">Éditer &raquo;</a>
    </p>

<?php
        exit();
    }    
    echo "Your language is " . $_SESSION['lang'];
    // any other content goes here
?>

答案 1 :(得分:2)

您可以通过以下网址传递您的语言:

for (int y = 0; y < 9; ++y) {
    for (int x = 0; x < 9; ++x) {
        std::cout << char('1' + std::max(std::abs(x - 4), std::abs(y - 4)));
    }
    std::cout << std::endl;
}

然后通过你的PHP代码读取这个lang:

<p><a class="btn btn-success" href="recetas.php?lang=ES" role="button">Editar &raquo;</a>

答案 2 :(得分:1)

您未正确传递查询字符串。传递查询字符串的正确格式如下:

URL?key1=value1&key2=value2

您可能希望将您的语言传递给您的PHP脚本,例如?lang=en。或者更好的是,如果您知道如何进行网址重写,则应该使您的网址像这样:URL/en/