Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.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 如何制作;否则";描述_Php_Mysql - Fatal编程技术网

Php 如何制作;否则";描述

Php 如何制作;否则";描述,php,mysql,Php,Mysql,我正在“php my admin”中构建一个表,我在第一次单击其中一个“th”时就这样做了,现在我正在第二次单击中尝试创建desc。。有什么想法吗 嗯。。很多我不记得了对不起 if($order == '' ) { $order= id; } $homework6 = $mysqli->query("SELECT * FROM homework6 WHERE manufacturer_hebrew LIKE '%$x%' order by $order asc"); $ro

我正在“php my admin”中构建一个表,我在第一次单击其中一个“th”时就这样做了,现在我正在第二次单击中尝试创建desc。。有什么想法吗

嗯。。很多我不记得了对不起

if($order == '' ) {

    $order= id;

}

$homework6 = $mysqli->query("SELECT * FROM homework6 WHERE manufacturer_hebrew LIKE '%$x%' order by $order asc"); 
$rows = $homework6->fetch_all(MYSQLI_ASSOC); 



echo '<div >';
echo '<table border= "1" >';
echo '<th colspan="1">'. '<a href="?order=id">x</a>' .'</th>';
echo '<th colspan="1">'. '<a href="?order=manufacturer_hebrew">x</a>' .'</th>';
echo '<th colspan="1">'. '<a href="?order=manufacturer_english">x</a>' .'</th>';
echo '<th colspan="1">'. '<a href="?order=Models_number">x</a>' .'</th>';
echo '<th colspan="1">'. '<a href="?order=made_in">x</a>' .'</th>';
foreach ($rows as $paz) 
{  if ($paz['Models_number'] < 2 )  {
    $color = "bg-danger";
}
elseif ($paz['Models_number'] < 10){
    $color = "bg-warning";
}   
 elseif ($paz['Models_number'] < 15){
    $color = "bg-success";
}

else {$color = "bg-primary";} 
echo '<tr class='.$color.'>';
echo '<td >' .$paz['id']. '</td>';
echo '<td>' .$paz['manufacturer_hebrew']. '</td>';
echo '<td>' .$paz['manufacturer_english']. '</td>';    
echo '<td>' .$paz['Models_number']. '</td>';
echo '<td >' .$paz['made_in']. '</td>';
echo '</tr>';
        }
echo '</table>';
echo '</div>';
if($order==''){
$order=id;
}
$homework6=$mysqli->query(“从homework6中选择*,其中制造商使用希伯来语“%$x%”按$order asc订购”);
$rows=$homework6->fetch_all(MYSQLI_ASSOC);
回声';
回声';
回音“.”;
回音“.”;
回音“.”;
回音“.”;
回音“.”;
foreach($paz行)
{如果($paz['Models_number']<2){
$color=“bg危险”;
}
elseif($paz[“型号”]<10){
$color=“bg警告”;
}   
elseif($paz['Models_number']<15){
$color=“bg成功”;
}
else{$color=“bg primary”;}
回声';
回显'.$paz['id'].';
回音“.$paz[“制造商”[希伯来语]”;
echo'.$paz['manufacturer_english'].';
回音'.$paz['Models_number'].';
回音'.$paz['made_in'].';
回声';
}
回声';
回声';

现在只有“asc”起作用了。

方法应该是这样的:您应该明确地定义当用户单击链接时将使用的排序顺序。例如,可以这样做:

$currentSort = isset($_GET['sort']) ? $_GET['sort'] : 'asc';
$newSort = $currentSort === 'asc' ? 'desc' : 'asc';
接下来,在查询中使用
$currentSort
,并将
$newSort
传递给链接:

$homework6 = $mysqli->query("SELECT * FROM homework6 WHERE manufacturer_hebrew LIKE '%$x%' order by $order $currentSort"); 

echo '<th colspan="1">'. '<a href="?order=id&sort=' . $newSort .'">x</a>'.'</th>';
$homework6=$mysqli->query(“从homework6中选择*,其中制造商用希伯来语“%$x%”按$order$currentSort排序”);
回音“.”;

方法应该是这样的:您应该明确地定义用户单击链接时将使用的排序顺序。例如,可以这样做:

$currentSort = isset($_GET['sort']) ? $_GET['sort'] : 'asc';
$newSort = $currentSort === 'asc' ? 'desc' : 'asc';
接下来,在查询中使用
$currentSort
,并将
$newSort
传递给链接:

$homework6 = $mysqli->query("SELECT * FROM homework6 WHERE manufacturer_hebrew LIKE '%$x%' order by $order $currentSort"); 

echo '<th colspan="1">'. '<a href="?order=id&sort=' . $newSort .'">x</a>'.'</th>';
$homework6=$mysqli->query(“从homework6中选择*,其中制造商用希伯来语“%$x%”按$order$currentSort排序”);
回音“.”;

我想应该是这样的:(未测试)

if($order==''){
$order=id;
}
$sort=strpos($order,'-')?'desc':'asc';
$orderBy=str_替换('-','$order);
$homework6=$mysqli->query(“从homework6中选择*,其中制造商使用希伯来语“%$x%”按$orderBy$sort排序”);
$rows=$homework6->fetch_all(MYSQLI_ASSOC);
$headColumns=[
['sort'=>'id','name'=>'x'],
['sort'=>'manufacturer_hebrew','name'=>'x'],
['sort'=>'manufacturer\u english','name'=>'x'],
['sort'=>'型号编号','name'=>'x'],
['sort'=>'made_in','name'=>'x'],
];
回声';
回声';
foreach($headColumns作为$headColumn){
$direction=strpos($order,$headColumn['sort'])和&strpos($order,'-')==false?'-':'';
回声';
}
foreach($paz行){
...

我想应该是这样的:(未测试)

if($order==''){
$order=id;
}
$sort=strpos($order,'-')?'desc':'asc';
$orderBy=str_替换('-','$order);
$homework6=$mysqli->query(“从homework6中选择*,其中制造商使用希伯来语“%$x%”按$orderBy$sort排序”);
$rows=$homework6->fetch_all(MYSQLI_ASSOC);
$headColumns=[
['sort'=>'id','name'=>'x'],
['sort'=>'manufacturer_hebrew','name'=>'x'],
['sort'=>'manufacturer\u english','name'=>'x'],
['sort'=>'型号编号','name'=>'x'],
['sort'=>'made_in','name'=>'x'],
];
回声';
回声';
foreach($headColumns作为$headColumn){
$direction=strpos($order,$headColumn['sort'])和&strpos($order,'-')==false?'-':'';
回声';
}
foreach($paz行){
...

我不是反对者,但我建议不要直接将
$$u GET['sort']
放入查询中。我会明确地说:
$currentSort=isset($$u GET['sort'])和&$$u GET['sort']==='desc'?'desc':'asc';
只是为了避免通过该参数进行SQL注入的风险。尽管相同(SQL注入的风险)也适用于已经存在的变量
$x
$order
,无论它们来自何处。不是downvoter,但这段代码仍然具有跨站点脚本注入Vurnablity,不仅是@rickdenhaan提到的SQL注入。我同意关于安全性的评论,但我刚刚提出了一种启动f的方法rom,不是一个完整描述的示例。我不是下选者,但我建议不要将
$\u GET['sort']
直接放入查询中。我要明确说明:
$currentSort=isset($\u GET['sort'])&&&$\u GET['sort']=='desc'?'desc':'asc';
只是为了避免通过该参数注入SQL的风险。尽管相同(SQL注入的风险)也适用于已经存在的变量
$x
$order
,无论它们来自何处。不是downvoter,但这段代码仍然具有跨站点脚本注入Vurnablity,不仅是@rickdenhaan提到的SQL注入。我同意关于安全性的评论,但我刚刚提出了一种启动f的方法rom,不是一个完整描述的示例。注意SQL注入..注意SQL注入。。