Hallo Leute,
ich schreibe an diesem Quellcode schon länger kann aber keine Lösung finden.
Mein Ziel ist das schlussendlich so eine Liste ausgegeben wird:
Kategory1
-Hallo
-Hallo2
-Hallo3
Kategory2
-Bye1
-Bye2
-Bye3
Kategory3
-ef
-werw
die mysqltabelle sieht wie folgt aus
id|name|matchingul|linum
1 | hallo1 1 1
2 |hallo2 1 2
5 hallo3 1 3
4 bye1 2 1
9 bye2 2 2
11 bye3 2 3
7 ef 3 1
8 werf 3 2
Die spalte "matchingul" besagt zu welcher kategory es zugehört
Die spalte "linum" besagt an welcher position es in der kategory steht.
Der folgende Quellcode zeigt die Liste nur wie gewünscht an, wenn die ids in der reihenfolge sind.
Sind sie aber nicht.
Was muss ich in den Quellcode schreiben, damit nicht nach der id abgezählt wird sondern der array nummer UND, dass im Falle das der wert von $tablemenu[$f]["lis"] nicht erreicht ist noch mal von vorne angefangen wird, aber das nur die listenelemente, die noch nicht ausgegeben worden sind in der reihenfolge ausgegeben werden.
Sodass alle listenelemente einer kategory trotz verschiedener id in der reihenfolge linum abgearbeitet werden.
Ich würde euch für jede hilfe dankbar sein.
Danke im vorraus
webber979
ich schreibe an diesem Quellcode schon länger kann aber keine Lösung finden.
Mein Ziel ist das schlussendlich so eine Liste ausgegeben wird:
Kategory1
-Hallo
-Hallo2
-Hallo3
Kategory2
-Bye1
-Bye2
-Bye3
Kategory3
-ef
-werw
die mysqltabelle sieht wie folgt aus
id|name|matchingul|linum
1 | hallo1 1 1
2 |hallo2 1 2
5 hallo3 1 3
4 bye1 2 1
9 bye2 2 2
11 bye3 2 3
7 ef 3 1
8 werf 3 2
Die spalte "matchingul" besagt zu welcher kategory es zugehört
Die spalte "linum" besagt an welcher position es in der kategory steht.
Der folgende Quellcode zeigt die Liste nur wie gewünscht an, wenn die ids in der reihenfolge sind.
Sind sie aber nicht.
Was muss ich in den Quellcode schreiben, damit nicht nach der id abgezählt wird sondern der array nummer UND, dass im Falle das der wert von $tablemenu[$f]["lis"] nicht erreicht ist noch mal von vorne angefangen wird, aber das nur die listenelemente, die noch nicht ausgegeben worden sind in der reihenfolge ausgegeben werden.
Sodass alle listenelemente einer kategory trotz verschiedener id in der reihenfolge linum abgearbeitet werden.
Ich würde euch für jede hilfe dankbar sein.
PHP:
<?php $mysqli = new mysqli("localhost", "root", "", "AFCIMS_db");
if ($mysqli->connect_error) {
echo "Connection Error: " . mysqli_connect_error() . "Please try again later!";
exit();
}
else {
$lielementsresult = $mysqli->query(" SELECT * FROM sites ") ;
$ulelementsresult = $mysqli->query(" SELECT * FROM ullist ") ;
echo "Headings:";
$tablemenu = array();$lielements = array();$ii = 1;
$f = 1;
a: while (
$row = $ulelementsresult->fetch_array() )
{ $tablemenu[$row["id"]] = $row;
echo "</br><input type=\"text\" size=\"2\" value=\" "; echo $tablemenu[$f]["id"]; echo" \" /> ";
echo "<input type=\"text\" size=\"7\" value=\" " . htmlspecialchars($tablemenu[$f]["name"]) . " \" /> <input type=\"submit\" value=\"change\" />
<br> ";
while($row2 = $lielementsresult->fetch_array() )
{ $lielements[$row2["id"]] = $row2;
if ( $lielements[$ii]["matchingul"] == $f && $lielements[$ii]["linum"] !== $tablemenu[$f]["lis"] +1 )
{
echo "</br> <input type=\"text\" size=\"2\" value=\" "; echo $lielements[$ii]['linum']; echo" \" /> ";
echo "<input type=\"text\" size=\"7\" value=\" " . htmlspecialchars($lielements[$ii]['name']) . " \" /> <input type=\"submit\" value=\"change\" />
<br>";
$ii++;
}
else {
$f++;
goto a;
}
}
}
// echo "<br>Sites:<br>";
$lielementsresult->close();
$ulelementsresult->close();
$mysqli->close();
}
?>
Danke im vorraus
webber979