PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : While Schleife



powergrafik
09.12.2007, 14:20
Hallo,

ich hab leider über die Suche nichts gefunden.
Ich bin gerade dabei ein kleines Addon zu porgrammieren.

Mein Code sieht so aus :



<?php head("&Uuml;bersicht deiner Sub-ID´s"); ?>
<?php
$subidliste = db_query("SELECT * FROM ".$db_prefix."_bettel_sub WHERE uid = '".$_SESSION['uid']."';");
$ausgabe1 = mysql_fetch_array($subidliste);
if(!isset($ausgabe1['ID']) or empty($ausgabe1['ID'])) {
echo 'Sie haben noch keine Sub-ID´s angelegt.';
}
else
{
echo '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="15%"><div align="left"><strong>Name</strong></div></td>
<td width="30%"><div align="center"><strong>Link</strong></div></td>
<td width="21%"><div align="center"><strong>Aufrufe</strong></div></td>
<td width="20%"><div align="center"><strong>Verdienst</strong></div></td>
<td width="14%"><div align="center"><strong>L&ouml;schen ? </strong></div></td>
</tr>';
while ($ausgabe = mysql_fetch_array($subidliste)) {
echo ' <tr>
<td><div align="left">'.$ausgabe['name'].'</div></td>
<td><div align="center">
<input name="link" type="text" id="link" value="'.$ausgabe['ID'].'">
</div></td>
<td><div align="center">'.$ausgabe['angebettelt'].'</div></td>
<td><div align="center">'.$ausgabe['bv'].' Lose </div></td>
<td><div align="center"><a href="index.php?content=/subids/delete&id='.$ausgabe['ID'].'">[x]</a></div></td>
</tr>';
}
echo '</table>';
}
?>
<?php foot(); ?>



In der Mysqldatenbank ist ein Eintrag.

Aber aus irgendeinem Grund funktioniert die While Schleife nicht.

Ich hoffe ihr könnt mir helfen.

Mfg
Marvin

Gremlin
09.12.2007, 14:55
Mach mal im Query das Semikolon ; weg manchmal verursacht das Probleme, ansonsten mach mal ein

or die(mysql_error())
dahinter.

Gruß
Gremlin

powergrafik
09.12.2007, 15:02
Danke erstmal für die Antwort, aber es wird trotzdem nichts ausgeben,
auch kein Msql Error.

Mfg
Marvin

Gremlin
09.12.2007, 16:36
Gib mal folgendes aus:


echo 'Einträge: '.mysql_num_rows($subidliste);

Gruß
Gremlin

powergrafik
09.12.2007, 16:41
Hab ich :



Einträge: 1


Mfg
Marvin

Gremlin
09.12.2007, 17:07
Wird denn der Tabellenkopf angezeigt oder der auch schon nicht?

powergrafik
09.12.2007, 17:11
Der wird angezeigt, wie gesagt nur die Whileschleife funktioniert nicht.

Kenn keiner ne Lösung ?

Stella
12.12.2007, 10:16
versuch mal so:

echo ' <tr>
<td><div align="left">$ausgabe[name]</div></td>
<td><div align="center">
<input name="link" type="text" id="link" value="$ausgabe[ID]">
</div></td>
<td><div align="center">$ausgabe[angebettelt]</div></td>
<td><div align="center">$ausgabe[bv] Lose </div></td>
<td><div align="center"><a href="index.php?content=/subids/delete&id=$ausgabe[ID]">[x]</a></div></td>
</tr>';
}

VMS1
13.12.2007, 13:58
<?
head("&Uuml;bersicht deiner Sub-ID´s");
$subidliste = db_query("SELECT * FROM ".$db_prefix."_bettel_sub WHERE `uid` = '".$_SESSION['uid']."'") OR die(mysql_error());

if (mysql_num_rows($subidliste) >= 1) {
echo '
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="15%" align="left"><b>Name</b></td>
<td width="30%" align="center"><b>Link</b></td>
<td width="21%" align="center"><b>Aufrufe</b></td>
<td width="20%" align="center"><b>Verdienst</b></td>
<td width="14%" align="center"><b>L&ouml;schen ? </b></td>
</tr>';

while ($ausgabe = mysql_fetch_array($subidliste)) {
echo '
<tr>
<td align="left">'.$ausgabe['name'].'</td>
<td align="center"><input type="text" name="link" id="link" value="'.$ausgabe['ID'].'" readonly></td>
<td align="center">'.$ausgabe['angebettelt'].'</td>
<td align="center">'.$ausgabe['bv'].' '.$waehrung.'</td>
<td align="center"><a href="index.php?content=/subids/delete&id='.$ausgabe['ID'].'">[x]</a></td>
</tr>';
}
echo '</table>';

} else {
echo '<div align="center">Sie haben noch keine Sub-ID´s angelegt.</div>';
}
foot();
?>

So dürfte es gehen. Ich denke mir auch einfach mal so, das man kein div innerhalb einer Tabellenspalte braucht, um den Inhalt auszurichten. <b> ist dasselbe wie <strong> nur viiiiiel weniger zu tippern^^.

Wenn du das mit der Löschfunktion noch etwas eleganter haben möchtest:


<?

if ($_POST['delete'] == 'Markierte Sub-IDs loeschen') {
foreach ($_POST['del'] AS $ids) {
$ids = (int)$ids;
db_query("DELETE FROM ".$db_prefix."_bettel_sub WHERE `ID` = '".$ids."' LIMIT 1");
}
}

head("&Uuml;bersicht deiner Sub-ID´s");
$subidliste = db_query("SELECT * FROM ".$db_prefix."_bettel_sub WHERE `uid` = '".$_SESSION['uid']."'") OR die(mysql_error());

if (mysql_num_rows($subidliste) >= 1) {
echo '
<form action="" method="post">
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="15%" align="left"><b>Name</b></td>
<td width="30%" align="center"><b>Link</b></td>
<td width="21%" align="center"><b>Aufrufe</b></td>
<td width="20%" align="center"><b>Verdienst</b></td>
<td width="14%" align="center"><b>L&ouml;schen ? </b></td>
</tr>';

while ($ausgabe = mysql_fetch_array($subidliste)) {
echo '
<tr>
<td align="left">'.$ausgabe['name'].'</td>
<td align="center"><input type="text" name="link" id="link" value="'.$ausgabe['ID'].'" readonly></td>
<td align="center">'.$ausgabe['angebettelt'].'</td>
<td align="center">'.$ausgabe['bv'].' '.$waehrung.'</td>
<td align="center"><input type="checkbox" name="del[]" value="'.$ausgabe['ID'].'"></td>
</tr>';
}
echo '
<tr>
<td colspan="5" align="center"><input type="submit" name="delete" value="Markierte Sub-IDs loeschen"></td>
</tr>
</table>
</form>';

} else {
echo '<div align="center">Sie haben noch keine Sub-ID´s angelegt.</div>';
}
foot();
?>

powergrafik
14.12.2007, 07:45
Danke euch allen funktioniert jetzt !