php.de

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

 
 
LinkBack Themen-Optionen
Alt 21.03.2005, 15:51  
Gast
 
Beiträge: n/a
Standard Array ausgeben

Hallo miteinander,
ich habe ein kleines Problem mit meinem Array.
Ich mache eine Datenbankabfrage bei einer Suchfunktion und speichere meine Ergebnistabelle in einem Array, damit auch später innerhalb des Arrays sortieren kann und nicht jedesmal ne neue Datenbankabfrage machen muss.
Allerdings haperts schon bei der ersten Ausgabe.
hier der Code:
PHP-Code:
<?
$resultarray
= array();

while(
$datamysql_fetch_assoc($res)){
      
array_push($resultarray$data);    
}

for(
$i 0;$i count($resultarray);$i ++){
      echo 
"<tr>";
      for(
$j=0$j array_count_values($resultarray); $j++){
        echo 
"<td>".$resultarray[$i][$j]."<td>";            
      }
      echo 
"</tr>";
}
//eof for
?>
das problem ist, dass ich einige arrayinhalte in den zeilen formatieren möchte. wie kann ich denn innerhalb einer zeile die einzelnen felder ansprechen? ich möchte zB jedes zweite feld in einer Zeile ansprechen und den Inhalt neu formatieren. Auch sollen nicht immer alle Werte einer zeile ausgegeben werden!
deshalb hab ich diese variante ausgeschlossen:
PHP-Code:
<?
foreach($resultarray[$i] as $key => $value){
         echo 
"<td>".$value."</td>";
?>
kann man sich auch innerhalb einer zeile bewegen?
vielen Dank schon mal!
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 21.03.2005, 16:09  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was meinst Du mit innerhalb einer Zeile?

Eventuell zur Vertiefung der Kenntnisse über Arrays:
http://php-info.org/ftopic35.html

Und hier mal reinschauen:
http://www.phpfriend.de/ftopic35038.html
__________________
privater Blog
imported_Ben ist offline  
Alt 21.03.2005, 16:11  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 4.028
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Ganz heiss, deine innere Schleife, wenn der erste Eintrag (des äusseren) Arrays genau einmal vorkommt (was sehr wahrscheinlich ist), dann ist die Schleife auch schon zu Ende. array_count_values() wird zum zählen von identischen Einträgen in einem Array verwendet und nicht als Zähler. Ausserdem kannst du einen assozitiven Array nicht einfach mit nummerischen Indizes ausgeben. Das einzig Vernünftige, was übrigbleibt, ist genau die Variante, die du ausschliesst.
__________________
Gruss
L
lazydog ist offline  
Alt 21.03.2005, 16:26  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Ben
Was meinst Du mit innerhalb einer Zeile?
mein array schaut so aus:
ID
datum aber im keinem Dateformat, sondern JJJJMMTT als string
quelle
ziel
vorname
nachname

da die datenbank schon in betrieb ist und ich nur die suchfunktion basteln soll, will ich nicht das tolle datumsformat ändern, da dann alle anderen scripte ebenfalls geändert werden müssten.

ich möchte nun in jeder zeile, es sind mehrere Datensätze, das datum in das format "TT.MM.JJJJ" schreiben
dann soll der vor- und nachname im Format
"nachname, vorname" ausgegeben werden.
dazu muss ich doch jedes element in einem datensatz ansprechen.
mit " foreach" kann ich ja nicht die einzelnen werte bearbeiten. gibts da ne andere lösung?
 
Alt 21.03.2005, 16:32  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von lazydog
Ganz heiss, deine innere Schleife, wenn der erste Eintrag (des äusseren) Arrays genau einmal vorkommt (was sehr wahrscheinlich ist), dann ist die Schleife auch schon zu Ende.
leider wird die schleife benötigt, da es eine suchfunktion ist und teilweise 300 Datensätze zu angegebenen Suchkriterien zu finden sind. daher die äußere for-schleife.
 
Alt 21.03.2005, 16:42  
Gast
 
Beiträge: n/a
Standard Re: Array ausgeben

Zitat:
Zitat von --hEnrY--
hier der Code:
Der ist reichlich umständlich.

Warum nicht so?
PHP-Code:
<?php

print '<table>';

while(
$datamysql_fetch_assoc($res))
{
    print 
'<tr>';
    foreach(
$data as $key => $val)
    {
        
printf('<td>%s</td>',
            
htmlentities($val));
    }
    print 
'</tr>';
}

print 
'</table>';

?>
EDIT:
oder so, falls Du zwischen DB Request und dem print noch was anderes erledigen mußt.
PHP-Code:
<?php
$resultarray
= array(); 

while(
$datamysql_fetch_assoc($res)){ 
      
$resultarray[] = $data);    


# irgend was

$k count($resultarray);

for(
$i 0;$i $k;$i ++)

    print 
'<tr>';
    foreach(
$resultarray[$i] as $key => $val)
    {
        
printf('<td>%s</td>',
            
htmlentities($val));
    }
    print 
'</tr>';

}
//eof for 
?>
 
 


Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Turnierbaum aus array erstellen kingflo PHP-Fortgeschrittene 11 30.07.2008 11:32
Soapfault: Undefined Property Argi PHP-Fortgeschrittene 0 28.07.2008 11:17
array richtig sortieren, dann ausgeben Heart PHP Tipps 2006 5 28.04.2006 20:23
Array auslesen andrew22 PHP Tipps 2006 3 21.01.2006 23:06
Array Formatierung PHP Tipps 2006 3 17.01.2006 19:12
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Problem beim vergleichen von 2 Arrays PHP Tipps 2005-2 1 06.10.2005 14:25
Array ausgeben PHP Tipps 2005-2 1 14.07.2005 12:53
Sortieren von Arrays mit mehr als 2 Dimensionen (Teil 2) Buhmann PHP-Fortgeschrittene 4 12.07.2005 14:03
Array füllen und ausgeben PHP Tipps 2005 6 24.02.2005 14:33
[Erledigt] Mehrdimensionales Array in eindimensionales Array umwandeln PHP-Fortgeschrittene 3 03.01.2005 22:31
Abfrage mit id aus anderer Tabelle suter PHP Tipps 2004-2 15 16.12.2004 14:25
[Erledigt] Array ausgeben PHP Tipps 2004-2 4 05.12.2004 00:53
Array: Nur einen bestimmten Teil ausgeben PHP Tipps 2004 17 25.10.2004 14:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
array in php vernünfig ausgeben, array formatiert ausgeben php, php array sortiert formatiert ausgeben, datenbankabfrage als array ausgeben, array ausgeben, datenbankabfrage im array ausgeben, array zeilenweise ausgeben php

Alle Zeitangaben in WEZ +1. Es ist jetzt 09:05 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2014, 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.