【问题标题】:How can I check to see if a element of an array exists in Mysql?如何检查Mysql中是否存在数组元素?
【发布时间】:2015-07-31 15:15:16
【问题描述】:

我有一个包含课程列表的静态菜单,一切都是静态的。

我希望菜单上只显示活动的课程,我想接受相同的订单。

我将所有子菜单的内容都放在一个变量中,如果在 DB 中处于活动状态则显示,如果不处于活动状态则不显示。

我正在学习,我想以正确的方式去做。

但是这段代码还不能工作。有人可以帮我吗?

<?php
//conexion DB
$dbLink = new PDO('mysql:host=localhost;dbname=dbname;charset=utf8', 'username', 'password', [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);

//array for order
$coursesarr = array('spanish', 'english', 'latin');


//query mysql
$qry_courses = "SELECT `shortname`, `visible` FROM `courses` WHERE visible = 1";


//define static varibles
$spanish = '<li><a href="/spanish.html">spanish</a>
<ul>
    <li>task 1 select course</li>
    <li>task 2 select course</li>
    <li>task 3 select course</li>
    ...
</ul></li>';
$english = '<li><a href="/english.html">English</a>
<ul>
    <li>task 1 select course</li>
    <li>task 2 select course</li>
    <li>task 3 select course</li>
    ...
</ul></li>';
$latin = '<li><a href="/latin.html">Latin</a>
<ul>
    <li>task 1 select course</li>
    <li>task 2 select course</li>
    <li>task 3 select course</li>
    ...
</ul></li>';

//PDO execute
$stmt = $dbLink->prepare($qry_courses);
$stmt->execute();

//Generate query DB and create menu
echo '<nav><ul>';
    while($row_courses = $stmt->fetchAll(PDO::FETCH_ASSOC))  {
        if(in_array("$row_courses['shortname']", $coursesarr){
            echo $.'$row_courses['shortname']'.;
        }
    }
echo '<ul><nav>';
?>

谢谢

【问题讨论】:

标签: php mysql arrays


【解决方案1】:

如下改变

    if(in_array("$row_courses['shortname']", $coursesarr){
        echo $.'$row_courses['shortname']'.;

 if($row_courses['shortname'] == $coursesarr){
        echo $row_courses['shortname'];

【讨论】:

    猜你喜欢
    • 2010-12-30
    • 1970-01-01
    • 1970-01-01
    • 2012-02-23
    • 1970-01-01
    • 2015-09-02
    • 1970-01-01
    • 2022-01-14
    • 2017-09-01
    相关资源
    最近更新 更多