Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/HTML,如果已经打开,如何从侧边栏隐藏当前文章?_Php - Fatal编程技术网

PHP/HTML,如果已经打开,如何从侧边栏隐藏当前文章?

PHP/HTML,如果已经打开,如何从侧边栏隐藏当前文章?,php,Php,如果侧边栏已经打开,我想把它隐藏起来,但我不知道怎么做。我是个新手,很抱歉 我使用MySqli select random在侧边栏中显示8篇文章。 文章保存在一个变量中,然后我在另一个页面上回显它们 谁能帮我一下,或者告诉我该怎么做。使用哪种代码。多谢各位 这是文章的代码 case'article': $get_article = mysqli_query($conn, "SELECT title,link,excerpt,description_1,description_2,desc

如果侧边栏已经打开,我想把它隐藏起来,但我不知道怎么做。我是个新手,很抱歉

我使用MySqli select random在侧边栏中显示8篇文章。 文章保存在一个变量中,然后我在另一个页面上回显它们

谁能帮我一下,或者告诉我该怎么做。使用哪种代码。多谢各位

这是文章的代码

case'article':
    $get_article = mysqli_query($conn, "SELECT title,link,excerpt,description_1,description_2,description_3,description_4,description_5,description_6,description_7,description_8,description_9,description_10,description_11,description_12 from `articles_".LANG."` where link = '".$_GET['article']."'") or die(mysqli_error($conn));
    if(mysqli_num_rows($get_article) != 1){
        header("Status: 404 Not Found");
        $page = '404';
    }
    else{
        $row = mysqli_fetch_assoc($get_article);
        $title = $row['title'];
        $description = $row['excerpt'];
        $content_url= 'http://www.example.com/'.$_GET['lang'].'/'.$row['link'].'/';
        $meta_img = 'http://www.sub.example.com/'.$_GET['lang'].'/'.$row['link'] .'/1.jpg';
        $files = glob('/home/site/sub.example.com/'.$_GET['lang'].'/'.$row['link'].'/*.{jpg,jpeg,png,gif}', GLOB_BRACE);

        $total = count($files);

        for($i = 1;$i <= $total; $i++){
            if(is_file('/home/site/sub.example.com/'.$_GET['lang'].'/'.$row['link'].'/'.$i.'.jpg')){
                $picture = $i.'.jpg';
            }
            elseif(is_file('/home/site/sub.site.com/'.$_GET['lang'].'/'.$row['link'].'/'.$i.'.jpeg')){
                $picture = $i.'.jpeg';
            }
            $pictures .= '<div class="article_box"><h3 class="top_img_description">'.$row['description_'.$i]. '</h3>'.'<div class="single_img_container"><img src="http://sub.example.com/'.$_GET['lang'].'/'.$row['link'].'/'.$picture.'"/></div></div>';
        }
这是边栏代码

$article_sidebar = mysqli_query($conn, "SELECT title,link from `articles_".LANG."`ORDER BY RAND() LIMIT 8") or die(mysqli_error($conn));

while($row2 = mysqli_fetch_array($article_sidebar)){

if(is_file('/home/site/sub.example.com/'.$_GET['lang'].'/'.$row2['link'].'/1.jpg')) {
    $file='http://sub.example.com/'.$_GET['lang'].'/'.$row2['link'].'/1.jpg';
}

$sidebar_articles .= '<div class="article">
        <div class="article_thumb">'.'<a href="/'.LANG.'/'.$row2['link'].'/"><img src="'.$file.'"/></a>
        </div>
        <h3 class="feed_title">
            <a href="/'.LANG.'/'.$row2['link'].'/">'.$row2['title'].'</a>
        </h3>
    </div>';    
}
这是我想要的截图


排除查询中当前显示元素的id。例如,可以使用。在将这些值放入mysql查询之前,不要忘记检查它们

如果您希望能够在某个时刻切换文章而无需重新加载页面,则可以使用javascript执行此操作。为右边的所有文章添加一个唯一类,为页面上的主要文章添加一个唯一ID,并将其与主要部分进行比较。如果两者匹配,则应用隐藏类或将其“显示”属性更改为“无”

如果您想在服务器端执行此操作,并且在文章之间切换会导致页面刷新,那么您应该对上述内容应用类似的方法。存储对当前“main”文章的一些引用,并将侧栏文章包装在foreach中

在这个foreach中,将每个添加到侧栏html的内容包装在一个if语句中,该语句将当前值与主要文章的值进行比较

例如


@PhilippMaurer我加了一句,坚持@Bernhard的答案$在您的情况下,currentid是$\u GET['article']。但是请阅读SQL注入和准备好的语句,因为您的代码容易受到攻击。@PhilippMaurer我试过了,但出现语法错误。谢谢。我会看看我能做什么:它如何知道当前文章的id?如果我只在侧边栏选择中这样做会有效吗?谢谢。我猜你在文章页面的链接中有ID,不是吗?它。。。何处链接'$_获取['article']。。。,它很容易受到SQL注入的攻击。@Bernhard,我认为它没有ID,我正在使用switch case语句在页面之间切换。默认/文章,当我点击一篇文章时,它会打开文章页面并显示变量的内容$_获取['article'],“它起作用了,谢谢你,@PhilippMaurer我会看看如何使它更安全。谢谢。
"SELECT title,link from `articles_".LANG."`WHERE id <> ".$currentid." ORDER BY RAND() LIMIT 8"
if ( $currentArticleId !== $mainArticleId )
{

$sidebar_articles .= '<div class="article">
        <div class="article_thumb">'.'<a href="/'.LANG.'/'.$row2['link'].'/"><img src="'.$file.'"/></a>
        </div>
        <h3 class="feed_title">
            <a href="/'.LANG.'/'.$row2['link'].'/">'.$row2['title'].'</a>
        </h3>
    </div>';  

...