Hej
Detta är lite av en uppföljningsfråga
Jag för söker göra en DAL class med mysqli
Så här ser den ut
class database {
static $connect=FALSE;
function __construct() {
if(self::$connect===FALSE){
self::$connect=new mysqli(DBHOST,DBUSER,DBPASSW,DBASE)or die("Kan inte ansluta");
}
if(self::$connect->connect_error){
die("Får ej kontakt med databasen");
}
}
function dbselect($sql){
if(!$res=self::$connect->query($sql)){
echo $sql;
die('Query error ' . self::$connect->error . '-' . self::$connect->errno);
return FALSE;
}
$number_rows=$res->num_rows;
if($number_rows==0){
return FALSE;
}
elseif($number_rows==1){
return $res->fetch_assoc();
}
elseif($number_rows>1){
while($row=$res->fetch_assoc()){;
$results[]=$row;
}
return $results;
}
}
}
Jag skulle vilja hämta det så här
function lbokfmtrl(){
$dbops=new database();
$FormSize=array("W"=>485,"C1"=>345,"C2"=>140);
$wdate=time()-(57*24*60*60);
$Y=date("Y",$wdate);
$M=date("m",$wdate);
$warning=$Y."-".$M."-01";
$sql="SELECT K.Kund_ID AS kid, K.Namn AS namn, K.Kundnr AS knr FROM tblKund AS K WHERE K.Kund_ID NOT IN (SELECT KundID FROM tblLBokf WHERE Period>='".$warning."') AND Avslutad = FALSE ORDER BY K.Kundnr ASC";
?>
<table id="alertlist" style="width: <?php echo $FormSize[W]?>px;">
<tbody>
<tr>
<th colspan="2">Kunder med sent månadsmaterial
</th>
</tr>
<tr>
<td class="subrubr">Kund
</td>
<td class="subrubr">Senaste Period
</td>
</tr>
<?php
$res=$dbops->dbselect($sql);
var_dump($res);
foreach($res as $rows){
$rowstyle=($altstyle % 2 == 1 ? "class=\"alt\"" : "");
print "<tr $rowstyle>";
print "<td style=\"width:".$FormSize['C1']."px;\"><a href=\"material.php?action=2\" class=\"lista\">" . $rows->knr . " - " . $rows->namn ."</a>";
print "</td>";
$sql2="SELECT MAX(Period) AS Per FROM tblLBokf WHERE KundID=".$rows->kid;
$subres=$dbops->dbselect($sql2);
print "<td style=\"width:".$FormSize['C2']."px;\">";
if (!$subres){
periodFormat($subres);
}
else {
print "Uppgift saknas";
}
print "</td>";
print "</tr>";
$altstyle++;
}
?>
</tbody>
</table>
<?php
}
Men det går inte för resultatet verkar bli en array med en under array då jag hämtar 3 uppgifter från databasen.
resultatet av ovan kod ser ni här
http://experio.myqnapcloud.com/solboadmin/
Vill ju bara kunna hämta på samma sätt som om jag hade myqli_fetch_assoc() direkt i koden eller går inte det? :)