php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.09.2004, 15:45  
Gast
 
Beiträge: n/a
Standard Daten in Spalten ausgeben, wo ist mein fehler??

Hallo,

habe folgende einfache abfrage generiet, das problem ist, dass sie nach der while schleife aufhört und nicht mehr zu der for schleife zurückkehrt?
Das ziel ist es Daten aus der Datenbank in Spalten auzugeben, und zwar

datensatz_1_wert_1 | datansatz_2_wert 1
datensatz_1_wert_2 | datensatz_2_wert 2

die Werte werden dabei über das $array ausgewählt. Bis jetzt gibt das skript mir nur werte für $x=0 raus und nicht für 1,2...

Für Hilfe wäre ich sehr dankbar

Gruß
Markus

PHP-Code:
<?php
//CONNECTION
$connection mysql_connect("localhost""gsl""gsl_") or die ('cannot reach database');
$db mysql_select_db("gsl") or die ("this is not a valid database");

$result mysql_query("SELECT * FROM rc");


$array =array("rcID","rc_bd_sm","rc_bd_wc");
$zahl count($array);
echo 
"<table><tr>";
for(
$x=0$x<$zahl$x++){
    while(
$row=mysql_fetch_array($result)){
        
$name $array[$x];
    
$line ='<td>'.$row[$name].'</td>';
    echo 
"$line
"
;
    echo 
"</tr><tr>";}
   }

echo 
"</tr></table>";
?>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.09.2004, 16:31  
Gast
 
Beiträge: n/a
Standard

Servus ich habe das eben mal mit dem count probiert und bin zu dem schluß gekommen das du das array anders aufbauen musst denn bei deinem aufbau ($array = array("","","",""); )
gibt die count funktion nur array bei mir aus)

anders hingegen wenn du das array wie folgt aufbaust

$array[0] = 1;
$array[1] = 3;
$array[2] = 5;
$result = count ($array);

Dann ist der ausgegebene wert 3

gruß


bad23
 
Alt 27.09.2004, 17:35  
Gast
 
Beiträge: n/a
Standard

klappt leider immer noch nicht,

wenn ich ein fehler in mysql_fetch_arrray einbaue, bekomme ich drei fehlermeldungen, d.h. doch das die while-schleife drei mal druchgeführt wird, ist kein fehler drin, wird sie jedoch nur einmal durchlaufen, d.h. ich bekomme nur die daten für den wert 1 = scID??

Gruß
Markus
 
Alt 27.09.2004, 22:16  
Gast
 
Beiträge: n/a
Standard

Code:
for($x=0; $x<$zahl; $x++){ 
    while($row=mysql_fetch_array($result)){ 
        $name = $array[$x]; 
    $line ='<td>'.$row[$name].'</td>'; 
    echo "$line
"; 
    echo "</tr><tr>";} 
   }
Du bekommst 3 Fehlermeldungen, weil Dur 3 Schleifendurchläufe hast.
Bei 3 Datensätzen müssten eigentlich 9 Fehlermeldungen kommen.

von 1 bis 3 mache solange datensatz da (also nochmal von 1-3)...

mach mal zur Kontrolle sowas hier:

Zitat:
echo "<table><tr>";

while($row=mysql_fetch_array($result))
{
for($x=0; $x<$zahl; $x++)
{
$name = $myarray[$x];
echo "<tr>".$myarray[$x]."<td></td><td>".$row[$name]."</td></tr>";
}
}

echo "</tr></table>";
und vor allem solltest Du eine Array-Variable nicht array nennen sondern myarray oder xyz oder sonstwie; wer weiß, welche Fallstricke Du Dir sonst legst.
 
Alt 28.09.2004, 09:25  
Gast
 
Beiträge: n/a
Standard

Danke für den tip, es funktioniert leider immer noch nicht, denn
das mit der for-schleife in der while schleife habe ich bereits ausprobiert als ausgabe bekomme ich dann:

datensatz1_wert 1, datensatz1_wert2, datensatz1_wert3,
datensatz2_wert 1, datensatz2_wert2, datensatz2_wert3,

was ich jedoch brauche ist:

datensatz1_wert 1, datensatz2_wert 2,
datensatz1_wert 2, datensatz2_wert 2,
datensatz1_wert 3, datensatz2_wert 3,

daher war die for schleife vor der while schleife gesetzt, aber da funktionert es nicht mehr,

gruß
Markus
 
Alt 28.09.2004, 12:37  
Gast
 
Beiträge: n/a
Standard Na endlich!!!

Yuhuu, das Skript ist noch nicht aufgeräumt aber es funktioniert. Das entscheidende war:
PHP-Code:
mysql_data_seek($result0); 
dies setzt den zeiger im array wieder auf den Anfang und alle (zumindest ich) sind glücklich.

Gruß
Markus


PHP-Code:
<?php
//CONNECTION
$connection mysql_connect("localhost""gsl""gsl_") or die ('cannot reach database');
$db mysql_select_db("gsl") or die ("this is not a valid database");

$result mysql_query("SELECT * FROM rc");
$myarray[0] = 'rcID';
$myarray[1] = 'rc_bd_sm';
$myarray[2] = 'rc_bd_wc';
$zahl count ($myarray);

echo 
"<table>";
for(
$x=0$x<$zahl$x++){
echo 
"<tr>";
while(
$row=mysql_fetch_array($result))
{
$name $myarray[$x];
echo 
"<td>".$row[$name]."</td>";
}

mysql_data_seek($result0);
}

echo 
"</tr></table>";



?>
[/php]
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Große Mengen Daten auf Drucker ausgeben Wolla PHP Tipps 2008 6 13.07.2008 15:29
Ausgeben der DB Daten nicht an richtiger Stelle Kein Genie PHP Tipps 2008 4 11.06.2008 10:55
Daten als Rotation ausgeben superskunk PHP Tipps 2008 16 24.05.2008 21:15
Daten aus Datenbank (richtig) ausgeben. momonov PHP Tipps 2008 19 27.03.2008 16:43
DB Problem // Keine Daten werden ausgeben Kein Genie PHP Tipps 2007 2 18.03.2007 10:39
SQL: Daten nur teilweise ausgeben Mike² Datenbanken 2 16.08.2006 17:01
Daten aus der Datenbank in 3 Spalten pro Zeile darstellen? ThaRider PHP Tipps 2005-2 7 14.07.2005 23:00
Mysql: Daten nach Anfangsbuchstaben Sortiert Ausgeben PHP Tipps 2005-2 5 09.07.2005 15:56
Daten aus Datenbank in 3 Spalten einteilen seven-12 Beitragsarchiv 2 24.06.2005 15:43
daten ausgeben + ändern möchtegernchegga PHP Tipps 2005-2 10 04.06.2005 14:48
Daten mit Masql ausgeben ohne while PHP Tipps 2005 25 22.05.2005 01:25
mysql daten ohne html formatierung ausgeben wizzardxx PHP Tipps 2005 2 28.03.2005 00:56
Daten ausgeben PHP Tipps 2004 3 25.08.2004 14:14
Daten in Spalten ausgeben??? PHP Tipps 2004 3 12.08.2004 17:58
Daten aus MySQL-Datenabnk ab Zeile X ausgeben PHP Tipps 2004 2 09.08.2004 19:17

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php array in drei spalten ausgeben, php 3 spalten ausgeben, php array \auf drucker ausgeben\, php resultset spalte ausgeben, fallstrick array php, mysql_fetch_array spaltennamen, db wert 2 spaltig ausgeben, php row spaltennamen ausgeben, php array spaltenname ausgeben, spaltennummer ausgeben, daten in spalten echo, php datensätze spalten ausgeben, mysql_fetch_array dritter wert, arrays in spalten formatiert ausgeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:08 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.