Jump to content
xt:Commerce Community Forum

Frage zu PHP


amilo

Recommended Posts

Hallo,

meine PHP Künste sind leider, nennen wir es mal nonexistent.

Mit sehr viel Mühe konnte ich mir folgendes Script zusammenbasteln:

<?php
$db = new mysqli('localhost', '*****', '*****', '******');
if (mysqli_connect_errno()) {
die ('Keine Verbindung zur Datenbank möglich: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
}
$sql = 'SELECT
products_name
FROM
xt_products_description';
$result = $db->query($sql);
if (!$result) {
die ('Abfrage nicht erfolgreich: '.$db->error);
}

while ($row = $result->fetch_assoc()) {
echo $row ['products_name']."<br/>";
}

$result->close();
unset($result);
?>[/PHP]

Das ganze funktioniert so weit auch, allerdings wird für nicht existierende product_id`s eine Leerzeile eingefügt.

Falls mir irgendjemand sagen kann wie ich das verhindern kann, und auch ob man das Script irgendwie verbessern kann, wäre ich sehr dankbar.

MfG. Hansen

Link to comment
Share on other sites

Ich kapier das nicht ganz ... wie kann ein produkt keine products_id haben!?

naja ich hab das mal fertig gemacht. Den Inhalt der Variable $sql hab ich geändert.


<?php
$db = new mysqli('localhost', '*****', '*****', '******');
if (mysqli_connect_errno()) {
die ('Keine Verbindung zur Datenbank möglich: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
}
$sql = "SELECT
*
FROM
xt_products_description WHERE products_id!=''";
$result = $db->query($sql);
if (!$result) {
die ('Abfrage nicht erfolgreich: '.$db->error);
}

while ($row = $result->fetch_assoc()) {
echo $row ['products_name']."<br/>";
}

$result->close();
unset($result);
?>
[/PHP]

Link to comment
Share on other sites

Hallo Ahlfy,

danke für die Anpassung. Das Problem bleibt aber weiterhin bestehen. :D

Was ich meinte ist nicht, das für einen Artikel der keine ID hat eine Leerzeile angelegt wird, sondern für jeden Artikel der mal existierte und gelöscht wurde.

Dadurch ensteht ein Sprung in den ID´s und der wird mit einer Leerzeile gefüllt.

Ich schicke die mal einen Link zur php dann siehst du was ich meine.

MfG. Hansen

Link to comment
Share on other sites

Iwie kapier ich grad nicht, warum er das so ausgegeben hat ... ich hab da wohl nen denkfehler ...

Folgende Lösung funktioniert ...


<?php
$db = new mysqli('localhost', '*****', '*****', '********');
if (mysqli_connect_errno()) {
die ('Keine Verbindung zur Datenbank möglich: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
}
$sql = "SELECT * FROM xt_products_description";
$result = $db->query($sql);
if (!$result) {
die ('Abfrage nicht erfolgreich: '.$db->error);
}

while ($row = $result->fetch_assoc()) {
if(empty($row ['products_name'])) {
echo "";
} else {
echo $row ['products_name']."<br/>";
}
}

$result->close();
unset($result);
?>
[/PHP]

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...