• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Mysql Daten ausgeben mit Verlinkung zu einer andern Seite

Hallo Forum,

ich habe ein Problem mit meiner PHP Ausgabe.

Ich möchte mir die Datenbank ausgeben lassen.
Neben der Datenausgabe (diese funktioniert schon) soll dann "Ansehen" und gleich daneben Aendern stehen pro Zeile.
Drückt man dann auf Ansehen dann werden die Daten komplett ausgegeben.
Drückt man hingegen auf Ändern, kann man den Datensatz ändern.

So sollte die Ausgabe aussehen:

1|Hallo|Ändern|Ansehen
2|HEute|Ändern|Ansehen

usf.

Leider habe ich keine Idee wie ich das Problem lösen könnte.

Kann mir jemand vielleicht weiterhelfen?

Hier einmal der Code, soweit ich Ihn geschafft habe.
Code:
<html>
<body>
<?php
print '<form action="index.php" method="get">';?>
<?php
$Username = $_GET['Username'];

print '<p align="center"><font color="red">Sie sind angemeldet als' . " $Username" . '</p></font>';


print '<hr>';
print '<p>Kundendaten Cases</p>';
print '<hr>';


print '<p><a href="http://localhost/neuanlegen.php">Neuen Datensatz anlegen</a></p>';

$i = 0;
do {
print ' ' . "\n"; 
++$i; 
} while ($i<100);


$db = "intern";
$user = "$Username";
$pass = "$Password";
$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)

{

die ("Cannot connect to Database because not enough rights: ".mysql_error());

}

@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());

$sql = 'Select Username from intern';

$result = mysql_query($sql);

print '<table border="1">'."\n";

while($row = mysql_fetch_row($result))

{

print '<tr>' . "\n";

foreach($row as $field) {


print '<td>' . stripslashes($field) . '</td></a>'; // Hier wird die Dbase ausgegeben und neben jedem Datensatz sollte stehen, Ansehen und Aendern, drückt man nun einen der beiden, dann sollte auf einer anderen seite eben dieser Datensatz editierbar werden bzw. komplett angezeigt werden

}

print "</tr>\n";}

print "</table>\n";

mysql_close($link);

?>
</body>
</html>

Vielen Dank schon einmal im vorhinein.

Mfg
Byron
 
Ich antworte mir selber.

Habe mein erstes Problem selber lösen können.

Code:
print '<table border="1">'."\n";

while($row = mysql_fetch_row($result))

{

print '<tr>' . "\n";

foreach($row as $field) {

print "<td>$field</td>";

}
print "<td>Ansehen</td>";
print "<td>Aendern</td>";
print "</tr>\n";}

print "</table>\n";

Somit wird die Ausgabe id|Daten|Aendern|Ansehen - erzwungen

Jetzt wäre es noch interessant wie ich es hinbekommen kann, dass wenn man auf Aendern klickt, man nur diesen einen Datensatz ändern kann und komplett ansehen wenn man auf Ansehen klickt.
 
Du mußt mit dem Affenformular arbeiten.

http://www.php-center.de/faq/faq-code.html

Du machst einen Button und wenn der gedrückt wird, wird das Formular wieder aufgerufen.
Mit $_POST[button] fragst Du ab ob ein Knopf gedrückt wurde.
Dementsprechend änderst Du die Darstellung.

Wenn Du in jeder Zeilen eine Button für EDIT hast übergibst Du in jeder Zeile mit der FORM eine hidden Variable, die die Zeile genau bezeichnet.

Nach Drücken des Buttons wertest Du dann aus und stellst genau diese Zeile zum editieren bereit. Die anderen Zeilen zeigst Du nur an.

so z.B. Entweder wird die Zeile zum editieren angezeigt oder eben nur die Daten ausgegeben. Je nachdem was vorher für ein Knopf (action_kurzwahl) gedrückt wurde,

PS: Das ist nur ein Auszug und nicht vollständig!!

if (isset($_POST['action_kurzwahl'])
and $_POST['action_kurzwahl'] == "e_kurzwahl_edit"
and isset($_POST['zeile'])
and $_POST['zeile'] == "$datensatz_kurzwahl[id_kurzwahlen]" ) {
$k_kurz = $datensatz_kurzwahl[kurzwahl];
$k_kurznr = $datensatz_kurzwahl[kurzwahlnr];
$k_bez = $datensatz_kurzwahl[bezeichnung];
$k_prov = $datensatz_kurzwahl[provider_name];
?>



<TD><INPUT type='txt' name='k_kurzwahl' value='<?php print "$k_kurz"?>' size='5'></TD>
<TD><INPUT type='txt' name='k_kurzwahlnr' value='<?php print "$k_kurznr"?>' size='30'></TD>
<TD><INPUT type='txt' name='k_bezeichnung' value='<?php print "$k_bez"?>' size='30'></TD>
<TD><INPUT type='txt' name='k_provider_name' value='<?php print "$k_prov"?>' size='30'></TD>
</FORM>
</TR>

<?php
}
else {
?>
<TD><?php print "$datensatz_kurzwahl[kurzwahl]"; ?></TD>
<TD><?php print "$datensatz_kurzwahl[kurzwahlnr]"; ?></TD>
<TD><?php print "$datensatz_kurzwahl[bezeichnung]"; ?></TD>
<TD><?php print "$datensatz_kurzwahl[provider_name]"; ?></TD>
</TR>
<?php
}
 
Danke Dir vielmals für die Hilfe.

Eine Frage hätte ich noch.

Ich habe insgesamt 3 Seiten: eine login-Seite, dann als 2 Seite die Ausgabe der Tabelle und dann steht noch übergeben aus einem $_GET['login'] und $_GET['password'] die Anmeldeinformationen auf der 2ten Seite.
Auf der 3ten Seite kann man Updates vornehmen an der Datenbank, jetzt soll aber die 3te Seite Informationen wie Benutzernamen und Password der 2ten Seite mitnehmen.

Wie kann ich sowas realisieren?

Muss ich da vielleicht mit Cookies arbeiten? Oder kann ich irgendwie die Anmeldeinformationen der 1ten Seite mitschleppen bis zur 3ten Seite?

Danke schon einmal für die Hilfe.

Mfg
Byron
 
Dazu gibt es auch viele Meinungen wie man das am sichersten machen soll.
Das folgende benutze ich für den Hausgebrauch.

Ich habe auf jeder Seite folgendes:
<?php
session_start();
if ( ! $_SESSION[SESSION_eingelogt]) {
header("Location: usersettings_login.php");
}
?>
Ist der User nicht erfolgreich angemeldet wird er immer auf die Login Seite geschickt.

Auf der Login-Seite steht folgendes:
<?php
session_start();
$logincount = 0;
if (isset($_SESSION['SESSION_logcount'])) {
$logincount = $_SESSION['SESSION_logcount'];
}
$_SESSION = array();
session_destroy();
session_start();
$_SESSION['SESSION_logcount'] = ($logincount + 1);
$_SESSION['SESSION_eingelogt'] = FALSE;
$_SESSION['SESSION_durchwahl'] = "ERROR";
$_SESSION['SESSION_DEBUG1'] = TRUE;
$_SESSION['SESSION_menue'] = "login";
?>

Über die SESSION Variable $_SESSION['SESSION_durchwahl'] kann ich auf jeder Seite abfragen um welchen Benutzer es sich handelt.


Weitere Links, ich bin aber auch nicht dazu gekommen die durchzuarbeiten.

http://pear.php.net/package/Auth
http://www.tutorials.de/tutorials9684.html
http://www.php-resource.de/tutorials/read/33/1/
http://www.php-resource.de/tutorials/read/38/1/
http://webmaster-resource.de/tricks/php/login-formular-mit-php-und-mysql.php
http://www.ayom.com/faq/login-skript-mit-sessions-php-und-mysql-a-658.html
http://www.skriptarchiv.com/php/cat.php/kat/66
http://www.php-free.de/Passwort-Schutz/
http://www.google.de/search?q=php+loginskript
http://www.google.de/search?q=php+loginscript
http://www.google.de/search?q=php+login+script
 
Danke Dir vielmals für die Hilfe.

Ich hoffe nicht, daß ich das Ganze jetzt umschreiben muss.

Meine Login - Seite, wenn auch unsicher, sieht so aus.

Code:
<html>
<body>
<?php

print '<body bgcolor="yellow">';

print '<title>Login</title>';


print '<form action="index.php" method="get">';


$i = 0;
do {
print ' ' . "\n";   
++$i; 
} while ($i<2300);





print '<h1 align=center><font color="#FF0000">Hinweis</font></h1>';
print '<h1 align=center><font color="#FF0000">Es muss Username und Password eingegeben werden</font></h1>';



print '  <table border="0" cellpadding="0" cellspacing="4" bgcolor="aqua" align="center">';
print '    <tr>';
print '      <td align="right">Username</td>';
print '      <td><input type="text"name="Username" size="30" maxlength="30"></td>';
print '    </tr>';
print '    <tr>';
print '      <td align="right">Password</td>';
print '      <td><input type="PAssword" name="Password" size="30" maxlength="30"></td>';
print '    </tr>';
print '  </table>';

print '<p align="center"><input type="submit" value="Anmelden" /></p>';

print '<p align=center><font color="#FF0000">Es werden aus Sicherheitsgründen Ihr Account, Ihre IP - Adresse und die Uhrzeit mitgeloggt.</font></h1>';

print '</form>';
?>
</body>
</html>
 
GET ist dafür nicht geeignet, Du schickst die Daten in Klarschrift in der URL. Damit Können Sie sich in einem Cache verewigen, usw.

Deswegen lieber POST nehmen.

Jetzt mußt Du aus dieser Seite nur noch ein Affenformular machen, die Eingaben prüfen und dann die entsprechende Session Variablen setzen.
 
Ich habe mir das Script vom Internet heruntergeladen:

http://www.tutorials.de/forum/php-tutorials/9684-php-mysql-login-system-mit-sessions.html

Dann habe ich meine erste Seite folgendermaßen angepasst:

Code:
<?php  
include ("checkuser.php");  
?>  
<html>  
<head>  
  <title>Interne Seite</title>  
</head>  
<body>  
  BenutzerId: <?php echo $_SESSION["user_id"]; ?><br>  
  Nickname: <?php echo $_SESSION["user_nickname"]; ?><br>  
  Nachname: <?php echo $_SESSION["user_nachname"]; ?><br>  
  Vorname: <?php echo $_SESSION["user_vorname"]; ?>  
  <hr> 
<?php
print '<a href="http://localhost/kundendatenaendern.php">Kundendaten ändern</a>'."      ".'<a href="http://localhost/cases.php">Cases</a>'."      ".'<a href="http://localhost/email.php">Email</a>';
print '<hr>';


/******************************************DATENBANK BEGINNT HIER***************************************/

$user = $_SESSION["user_nickname"];
$pass = $_SESSION["user_nachname"];

print "$user";
print "$pass";

$db = "intern";

$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)

{

die ("Cannot connect to Database because not enough rights: ".mysql_error());

}

@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());

$sql = 'Select * from intern';

$result = mysql_query($sql);

print '<table border="1">'."\n"; 

while($row = mysql_fetch_row($result)) 

{ 

print '<tr>' . "\n"; 

foreach($row as $field) { 

print "<td>$field</td>"; 


} 


print "</tr>\n";}

print "</table>\n"; 

print '<h3><font color="blue">Welchen Datensatz wollen Sie ändern? (Eingabe der ID)</h3></font>';
print '<input name="aendern" type="text" />';
print '<input type="submit" value="ÄNDERN">';

print '<h3><font color="blue">Welchen Datensatz wollen Sie sich komplett ansehen? (Eingabe der ID)</h3></font>';
print '<input name="ansehen" type="text" />';
print '<input type="submit" value="ANSEHEN">';

mysql_close($link);

?>
  <a href="logout.php">Ausloggen</a>  
</body>  
</html>

Und dadurch dass er es mit md5 verschlüsselt dürfte er einen Fehler haben beim Verbinden mit der Datenbank "intern".
Er schreibt als Fehlermeldung: Client does not support authentication protocol requested by server; consider upgrading MySQL client. (Verwende den Mysql Client 5.0 auf Windows 2000 - leider!).

Sollte es mit einem Linux - System einwandfrei funktionieren, oder kann ich etwas umstellen, damit es einwandfrei geht?
 
Ich habe keine Idee ob mySQL 5 auf Win 2k damit Probleme hat.
Lass es doch weg und schicke es in Klarschrift.

Außerdem ist der mySQL Client doch localhost, d.h. Du bist eh auf dem gleichen Rechner.

Wenn die Verbindung zwischen Deinen SQL-Server und dem Apache "unsicher" ist würde ich eine OpenVPN Verbindung ziehen und so den gesamten Datenstrom verschlüsseln und nicht nur das Passwort.
 
Ok, habe den Client gedowngradet, dann funkt es.
Version 4.0 und irgendwas.

Habe mich aber nun dazu entschlossen, dass Script umzuschreiben, auf $_POST - Variablen ohne $_SESSIONS.

Muss mir das $_SESSIONS noch anlernen, damit ich es richtig einsetzen kann.

Aber danke für die Hilfe!

MFg
 
HAllo,

ich habe mein Script nun auf $_Sessions umgeschrieben, aber leider dürfte noch etwas nicht passen.

Habe ein Login - Script:

Code:
<html>
<body>
<form action="main.php" method="post">

<h1 align=center><font color="#FF0000">Hinweis</font></h1>
<h1 align=center><font color="#FF0000">Es muss Username und Password eingegeben werden</font></h1>

  <table border="0" cellpadding="0" cellspacing="4" bgcolor="aqua" align="center">
    <tr>
      <td align="right">Username</td>
      <td><input type="text"name="Username" size="30" maxlength="30"></td>
    </tr>
    <tr>
      <td align="right">Password</td>
      <td><input type="Password" name="Password" size="30" maxlength="30"></td>
    </tr>
  </table>

<p align="center"><input type="submit" value="Anmelden" /></p>

<p align=center><font color="#FF0000">Es werden aus Sicherheitsgründen Ihr Account, Ihre IP - Adresse und die Uhrzeit mitgeloggt.</font></h1>
</form>
</body>
</html>

Dann im main.php Script baue ich eine $_Session auf.

Code:
<?php
session_start();
?>
<html>
<body>
<form action="kunden.php" method="post">
<?php

$user = $_POST['Username'];
$pass = $_POST['Password'];

if(!empty($user) && ($pass)) {

$ip = getenv('REMOTE_ADDR');

print "<p align='center'><font color='red'>Ihre IP - Adresse ist $ip</p></font>";
print "<p align='center'><font color='red'>Ihre Daten wurden mitgeloggt</p></font>";

$line=strftime('%c');
print "<p align='center'><font color='red'>$line</p></font>";

print '<hr>';
print '<a href="http://localhost/kundendatenaendern.php">Kundendaten ändern</a>'."      ".'<a href="http://localhost/cases.php">Cases</a>'."      ".'<a href="http://localhost/email.php">Email</a>';
print '<hr>';

$db = "intern";
$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)
{
die ("Cannot connect to Database: ".mysql_error());
}
@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());
$sql = 'Select * from intern';
$result = mysql_query($sql);
print '<table border="1">'."\n"; 
while($row = mysql_fetch_row($result)) 
{ 
print '<tr>' . "\n"; 
foreach($row as $field) { 
print "<td>$field</td>"; 
} 
print "</tr>\n";}
print "</table>\n"; 
print '<h3><font color="blue">Welchen Datensatz wollen Sie ändern? (Eingabe der ID)</h3></font>';
print '<input name="aendern" type="text" />';
print '<input type="submit" value="ÄNDERN">';
print '<h3><font color="blue">Welchen Datensatz wollen Sie sich komplett ansehen? (Eingabe der ID)</h3></font>';
print '<input name="ansehen" type="text" />';
print '<input type="submit" value="ANSEHEN">';
} else
{ print '<p align="center">Sie sind nicht korrekt angemeldet</p>';
print '<p align="center"><a href="http://localhost/login.php>LOGIN - SEITE"</p>';}
?>
</body>
</html>

Drückt man nun auf Ändern, so wird man auf kunden.php umgeleitet und dort sollte die Variable aendern weiterverarbeitet werden.
Aber leider kann ich nicht darauf zugreifen, weder mit $_Session noch mit $_POST

KAnn mir wer sagen vielleicht warum?
Wahrscheinlihch setze ich die $_Session falsch ein.

Der Code vom kunden.php

Code:
<html>
<body>
<?php

print '<body bgcolor="yellow">';
$_Session['aendern'] = $_POST['aendern'];
if(isset($_Session['aendern'])) { //hier sind wir nun beim aendern

$db = "intern";
$user = "root";
$pass = "";
$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)
{
die ("Cannot connect to Database because not enough rights: ".mysql_error());
}
@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());
$sql = "Select * from intern where ID='$aendern'";
$result = mysql_query($sql);
print "<p align='center'>Ausgewaehlter Kunden zum Ändern</p>";
print '<table border="1" align="center">'."\n"; 
while($row = mysql_fetch_row($result)) 
{ 
print '<tr>' . "\n"; 
foreach($row as $field) { 
print "<td align=center>$field</td>" . "\n";
} 
print "</tr>\n";}
mysql_free_result($result);
//mysql_close($database);
print "</table>\n"; 
print '  <table border="0" cellpadding="0" cellspacing="4" bgcolor="aqua" align="center">';
print '    <tr>';
print "      <td align=right>ID </td>";
print "      <td><input type=text name=ID value='$aendern' size=30 maxlength=30></td>";
print '    </tr>';
print '    <tr>';
print '      <td align="right">Kunde </td>';
print "      <td><input type=text name=Kunde size=30 maxlength=30></td>";
print '    </tr>';
print '    <tr>';
print '      <td align="right">Tel </td>';
print '      <td><input type="text" name="Tel" size="30" maxlength="30"></td>';
print '    </tr>';
print '    <tr>';
print '      <td align="right">Equipment </td>';
print '      <td><input type="text" name="Equipment" size="30" maxlength="30"></td>';
print '    </tr>';
print '    <tr>';
print '      <td align="right">Ansprechpartner</td>';
print '      <td><input type="text" name="Ansprechpartner" size="30" maxlength="30"></td>';
print '    </tr>';
print '    <tr>';
print '      <td align="right">Adresse</td>';
print '      <td><input type="text" name="Adresse" size="30" maxlength="30"></td>';
print '    </tr>';
print '  </table>';
print '<p align="center"><input type="submit" name="UPDATE" value="UPDATE" /></p>';

$UPDATE = $_POST['UPDATE'];
$kunde = $_POST['Kunde'];
$Tel = $_POST['Tel'];
$Equipment = $_POST['Equipment'];
$Ansprechpartner = $_POST['Ansprechpartner'];
$Adresse = $_POST['Adresse'];

if(!empty($UPDATE) && (!empty($kunde)) && (!empty($Tel)) && (!empty($Equipment)) && (!empty($Ansprechpartner)) && (!empty($Adresse))){

print "<h4 align='center'><font color='blue'>Es wurden Ihre neuen Änderungen nun gespeichert!</h4></font>";

mysql_query("update intern set kunde='$kunde', Tel='$Tel', Equipment='$Equipment', Ansprechpartner='$Ansprechpartner', Adresse='$Adresse' where ID='$aendern'");

mysql_close($database);
}
}

else { //hier sind wir nun beim ansehen

$ansehen = $_GET['ansehen'];

$db = "intern";
$user = "root";
$pass = "";
$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)

{

die ("Cannot connect to Database because not enough rights: ".mysql_error());

}

@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());
$sql = "Select * from intern where ID='$ansehen'";
$result = mysql_query($sql);
print "<p align='center'>Ausgewaehlter Kunden zum Ansehen</p>";
print '<table border="1" align="center">'."\n"; 
while($row = mysql_fetch_row($result)) 
{ 
print '<tr>' . "\n"; 
foreach($row as $field) { 
print "<td align=center>$field</td>" . "\n";
} 
print "</tr>\n";}
mysql_close($database);
}
?>
</body>
</html>
 
Auf jede Seite gehört oben
<?php
session_start();
?>

Ebenfalls habe ich kein schließendes </FORM> gesehen.
Deswegen wird wohl $_POST[] nicht funktionieren.
 
ddem kann ich mich nur anschließen - wenn du Formularelemente wie Textinputs oder Buttons benutzt, so musst du sie in
Code:
<form [weitere Angaben]> hier die Formularsachen </form>
einschließen, da ansonsten das nicht abgesendet wird. Die konnte ich bei dir nicht finden.

Außerdem halt session_start() in jeder PHP, damit er wieder auf die Session zugreifen kann.
Und nach der letzten Seite (Abmelden oder so) möglichst session_destroy() , da sich sonst dein Speicherplatz bald mit alten Sessions zumüllt. Ich meine, da gibt es eine automatisch Müllabfuhr, den garbage collector, aber der wird halt nur "zufällig" ab und zu gestartet (PHP.ini-Einstellung).
 
Ok, danke Euch vielmals.
Bin jetzt auch hinter das Geheimnis der Sessions gekommen.
Scheint eine ziemlich mächtige Funktion zu sein in PHP.

Eine andere Frage, will dazu keine neuen Thread aufmachen.

Wenn ich 300 Datenbankeinträge habe, wie kann ich diese dann so ausgeben, dass 150 links stehen und 150 in der Mitte?

Folgendes aussehen:

eintrag 1 eintrag 151
eintrag 2 eintrag152
usf. usf.

Ich bekomme es mit einem modulo nicht so hin, wie ich es gerne hätte.
So würde mein Code dazu aussehen.

Code:
<?php session_start();?>
<html>
<body>
<form action="kunden.php" method="POST">
<?php

$_SESSION['user'] = $_POST['Username'];
$_SESSION['pass'] = $_POST['Password'];

if(!empty($_SESSION['user']) && (empty($_SESSION['pass']))) {

$ip = getenv('REMOTE_ADDR');

print "<p align='center'><font color='red'>Ihre IP - Adresse ist $ip</p></font>";
print "<p align='center'><font color='red'>Ihre Daten wurden mitgeloggt</p></font>";

$line=strftime('%c');
print "<p align='center'><font color='red'>$line</p></font>";

print '<hr>';
print '<a href="http://localhost/cases.php">Cases</a>';
print '<hr>';
print "<p>";
print "</p>";
$db = "intern";
$user=$_SESSION['user'];
$link = @mysql_connect ("localhost", $user, $pass);
if(! $link)
{
die ("Cannot connect to Database: ".mysql_error());
}
@mysql_select_db($db, $link) or die("Cannot open Database: ".mysql_error());

$result= mysql_query( 'Select * from intern order by Kunde');

$i=0;

print '<table border="1">'."\n"; 

while($row = mysql_fetch_array($result)){

++$i;
echo '<tr><td>'.$row[1].'</td>'."<td><a href='kunden.php?ansehen=".$row[0]."'>ansehen</a></tr></td>";}

if(($i % 2) == 0) {

echo '<tr><td>'.$row[1].'</td>'."<td><a href='kunden.php?ansehen=".$row[0]."'>ansehen</a></tr></td>" . "\t";




}


print "</table>\n"; 

} else

{ 

print '<p align="center">Sie sind nicht korrekt angemeldet</p>';

print '<p align="center"><a href="http://localhost/login.php>LOGIN - SEITE"</p>';}

$_SESSION['user']=$user;?>

</body>
</html>
 
Dein Ansatz ist falsch. Dafür brauchst du zwei Datenbankabfragen. Lösen tust du das dann mit dem "LIMIT" - Befehl in SQL also in etwa so:
Code:
SELECT <WasAuchImmer> FROM <Tabelle> <Optionen> LIMIT 0,151;
Code:
SELECT <WasAuchImmer> FROM <Tabelle> <Optionen> LIMIT 152,300;
bzw. könntest du vorher eine Abfrage laufen lassen, die dir Datensatzanzahl zurückliefert und dann die Zahlen von PHP errechnen lassen. Die Abfrage dafür wäre:
Code:
COUNT (<IrgendeineSpalte>) FROM <Tabelle>
Sie liefert dir eine ganze Zahl zurück.


Dann hast du also zwei Abfragen und dann lässt du im Wechsel die Felder $row1[0]...$row1[n] und $row2[0]...$row2[n] ausgeben.

PS: Das geht so nicht!!!
Code:
echo '<tr><td>'.$row[1].'</td>'."<td><a href='kunden.php?ansehen=".$row[0]."'>ansehen</a></tr></td>" . "\t";
Du kannst nicht die Reihe (<tr>) vor der Spalte (<td>) schließen.
 
Mit floor() erhälst Du eine ganze Zahl.
Damit kannst Du prüfen ob $zeilen nach Division mit 2 einen Rest übrig läßt.

Beim Rechnen mußt Du in PHP ein wenig vorsichtig sein. Teilweise erwartet man bei einer Subtraktion Null, erhält aber 10 hoch -23. Da hilft dann ROUND.
 
Oben