SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 16.05.2003, 17:03:26
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
SQL ABfrage in Tabelle ausgeben.

Hallo zusammen, bin recht neu in dem Gebiet PHP & SQL und habe auch schon gleich ein mehr oder weniger roßes Probleme.

Ich möchte die Werte einer SQL Abfrage in eine Tabelle ausgeben, doch leider funzt das nicht so wie ich es haben will. Ich will eine Tabelle mit 4 Spalten und 2 Zeilen.
Leider kriege ich aber immer nur eine Table mit 1 Spalte und 8 Zeilen. Hier mal mein Code:

$sql = "select Nick,Picture from chat_userpages";
$erg = mysql_query ($sql);
echo"<table border=1>";
while ($row= mysql_fetch_row($erg)){
echo "<tr>";
echo "<td BG COLOR='#000000' width='100'>$row[0]</td></TR>";
echo "<tr><td BG Color=#000000 width='100'> <img src=$row[1] border='0'> </td></TR>";
$zahl+=1;
if ($zahl==5){
echo "</table>";
break;}
}
mysql_close($db_handle);
?>
-----
$row[0] ist der Nick und $row[1] ist das Bild, ich möchte nun aber eine Tabelle die so aussieht:
Nick1 Nick2 nick3 Nick4
Bild1 Bild2 Bild3 Bild 4

Könnt Ihr mir da weiterhelfen ?

Danke schonmal.

bye
Mit Zitat antworten
  #2  
Alt 16.05.2003, 17:16:10
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Versuch's mal so:
PHP-Code:
$sql "select Nick,Picture from chat_userpages";
$erg mysql_query ($sql);
echo 
"<table border='1'>";
echo 
"<tr>";
while (
$rowmysql_fetch_row($erg))
 echo 
"<td BGCOLOR='#000000' width='100'>$row[0]</td>";
echo 
"</tr>";
echo 
"<tr>";
reset($erg);
while (
$rowmysql_fetch_row($erg))
 echo 
"<td BGColor=#000000 width='100'><img src='$row[1]' border='0'></td>";
echo 
"</tr>";
echo 
"</table>"
Wenn mir mal einfallen würde, wie man den Zeiger von $erg wieder an den Anfang bringt, dann könnte man sich die zweite Abfrage sparen. Ich such mal...


Ach ja: Das Attribut bgcolor wird zusammen geschrieben. ;)


Edit: Hab's gefunden mit dem Pointer und angepasst. Könnte sein, dass es klappt.
__________________
sic!
--> http://dbCF.de/

Geändert von ­c­4­ (16.05.2003 um 17:27:26 Uhr)
Mit Zitat antworten
  #3  
Alt 16.05.2003, 17:22:26
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
Hmm,
danke Dir, habe das mal glecih ausprobiert. SIeht jetzt so aus:
PHP-Code:
$db_handle=connect_db($DATABASEHOST,$DATABASEUSER,$DATABASEPASSWD);
if(
$db_handle<1){
exit;
}
$zahl=0;
echo 
"<table border='1'>";
echo 
"<tr>";
$sql "select Nick from chat_userpages";
$erg mysql_query ($sql);
while (
$rowmysql_fetch_row($erg)){
 echo 
"<td BGCOLOR='#000000' width='100'>$row[0]</td>";
echo 
"</tr>";
echo 
"<tr>";
$sql "select Picture from chat_userpages";
$erg mysql_query ($sql);
while (
$rowmysql_fetch_row($erg)){
 echo 
"<td BGColor=#000000 width='100'><img src='$row[1]' border='0'></td>";
echo 
"</table>";

$zahl+=1;
if (
$zahl==5){
echo 
"</table>";
break;}

mysql_close($db_handle);
?> 
Kriege dann aber diese Fehlermeldung:
Parse error: parse error, unexpected $end in C:Inetpubwwwroottestwebchathtmlnewtest.php on line 36
Mit Zitat antworten
  #4  
Alt 16.05.2003, 17:25:08
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Ich hatte das Skript da oben nochmal überarbeitet. Versuch es mal mit der Variante. Wenn auch die nicht geht, dann gib bitte wieder die Fehlermeldung an und auch, welche Zeile das ist! Ich hab nicht das Bedürfnis 36 Zeilen durchzuzählen...


Hab das Fehlerchen gerade gesehen: Die geschweiften Klammern hinter while() müssen weg.
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #5  
Alt 16.05.2003, 17:32:19
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
Also habe die geschweiften KLammern mal weggelassen, dann wurde aber nur 2 Spalten mit den Nicks ausgegeben.
Ich habe jetzt mal folgenden Code probiert:
[PHP]
if($db_handle<1){
exit;
}
$zahl=0;

$sql = "select Nick,Picture from chat_userpages";
$erg = mysql_query ($sql);
echo "<table border='1'>";
echo "<tr>";
while ($row= mysql_fetch_row($erg))
echo "<td BGCOLOR='#000000' width='100'>$row[0]</td>";
echo "</tr>";
echo "<tr>";
reset($erg); ( ZEILE 25)
while ($row= mysql_fetch_row($erg))
echo "<td BGColor=#000000 width='100'><img src='$row[1]' border='0'></td>";
echo "</table>";
$zahl+=1;
if ($zahl==5){
break;}
}}
mysql_close($db_handle);
?>
Dann bekomme ich eine Tabelle mit 2 Zeile, allerdings erscheint dann nur nickA und darunter das bild von Nickb.
AUsserdem gibts ne Fehlermeldung:
reset() [function.reset]: Passed variable is not an array or object in C:Inetpubwwwroottestwebchathtmlnewtest.php on line 25
Zeile 25 hab ich markiert.
Mit Zitat antworten
  #6  
Alt 16.05.2003, 17:36:53
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Schei$$e. Dann klappt das also nicht mit reset(). Schade, schade...

Kannst Du das Problemchen nicht vielleicht umgehen, in dem Du Name und Bild in ein Feld der Tabelle packst? Entspricht vielleicht nicht unbedingt Deinen Vorstellungen im Bezug auf das enstehende Design, aber weniger umständlich ist es auf alle Fälle.

Man könnte schließlich auch erst die Daten auslesen und in einem Array zwischenspeichern. Dann geht man dieses Array durch und lässt sich dann diese Tabelle zusammenschustern.
Wenn Du diese Idee durchexerziert haben willst, dann sag's ruhig. :)
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #7  
Alt 16.05.2003, 22:33:17
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
@C4, an das zwischenspeichern in einem Array habe ich auch schon gedacht, aber ich weiss nit, wie ich das realisieren könnte.
Hast Du da eine Idee ?

Danke
Mit Zitat antworten
  #8  
Alt 16.05.2003, 22:37:42
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Mal grob gefasst:
PHP-Code:
// einlesen
$sna=mysql_query($sql);
$i=0; while ($row=mysql_fetch_row($sna))
 { 
$arr[$i]=array($row[0],$row[1]); $i++; }
// ausgeben
echo "<table>";
echo 
"<tr>";
$i=0; while ($i<count($arr))
 { echo 
"<td>".$arr[$i][0]."</td>"$i++; }
echo 
"</tr>";
echo 
"<tr>";
$i=0; while ($i<count($arr))
 { echo 
"<td>".$arr[$i][1]."</td>"$i++; }
echo 
"</tr>";
echo 
"<table>"
Prinzip erkannt?
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #9  
Alt 16.05.2003, 22:42:34
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
hmmm, werde ich nachher mal testen.
Wenn mans den Code so vor sich sieht, siehts so einfach und verständlich aus ;-)

Danke, werd Dir Bescheid geben, wenns gefunzt hat.
Mit Zitat antworten
  #10  
Alt 16.05.2003, 23:46:35
Shape24 Shape24 ist offline
Anfänger
 
Registriert seit: May 2003
Beiträge: 9
Hmm, im großen und ganzen sollte es funktionieren. Das einzige Problem momentan ist, das wenn bei einem USer kein Bild hinterlegt ist, er auch nichts ausgibt.

Damit scheints zu gehn:
PHP-Code:
echo"<table><tr>"
$sql "select Nick,Picture from chat_userpages where Picture !='' and Picture !='http://'"
$erg mysql_query ($sql); 
while (
$rowmysql_fetch_row($erg)){ 
echo 
"<td><img src=$row[1] border='0'><br><center>$row[0]</center></td>"
$zahl+=1
if (
$zahl==5){ 
echo 
"</tr></table>"
Habe dadurch zwar bild und Nickname in einer Zelle, allerdings untereinander. Sieht man auch nicht so.
Danke nochmals. Wenn ich wieder auf ein Problem stoße, werde ich wieder nerven. ja ?
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:18:36 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.


© 2001-2020 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt