php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.12.2004, 16:17  
Gast
 
Beiträge: n/a
Standard mehrdimensionales Array mit Daten aus einer DB füllen

hallo miteinander,

habe folgendes Problem:

wenn ich das Array fest codiere funktioniert es
Code:
$param_d['highlight']= array('20050101' => 'Eintrag1', '20050105' => 'Eintrag2');
Doch möchte ich gerne das Datum und den Eintrag aus einer Datenbank heraus generieren. Die Daten auslesen aus der Datenbank funktionert, aber wie kriege ich diese Daten in das Array?
Folgendes habe ich versucht:

Code:
   include("../../func/open.inc.php");
   $table = "tab_aktuelles";
   $search = "startdatum, was";
   $where = "(internetfreigabe<>0) AND (id_artFK='1')";
   @mysql_select_db ($dbase) or  die ("Kann Datenbank nicht finden");
   $result = mysql_query("SELECT $search FROM $table WHERE $where", $conn);
   $num = mysql_num_rows($result);
   if ($num<=0) {
      //Keine gefunden
      $param_d['highlight'] = array();
   }
   else {
      //Daten in array füllen
      while($row  =  mysql_fetch_row($result))  {
         //umwandeln des Datums
         $datum = date("Ymd",strtotime($row['startdatum']));
         $anl = $row['was'];
         //ins array schreiben
         $param_d['highlight_type'] = array_push($param_d['highlight_type'],array($datum,$anl));
      }
   }
und folgende Fehlermeldung erhalten:
Warning: array_push(): First argument should be an array

hoffe es kann mir jemand helfen?
besten dank schon mal.

grüsse
alex
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 30.12.2004, 16:22  
Gast
 
Beiträge: n/a
Standard

Die Fehlermeldung sagt nichts anderes aus, als dass $param_d['highlight_type'] kein Array ist. Ich sehe aber auch nirgendwo, dass diese Variable als Array deklariert wurde, bzw. das passiert nur, wenn es keine Treffer in der DB gab.

Gruß
phpfan
 
Alt 30.12.2004, 16:41  
Gast
 
Beiträge: n/a
Standard

Treffer gibt es in der DB, dashabe ich einerseits direkt mit phpmyadmin abgefragt und im Code noch abgefangen mit
Code:
if ($num<=0) {
oder?

Vielleicht ist mein Syntax für das abfüllen der Daten ganz falsch? Denn was ich möchte, ist anstatt der fest codierten Datum=>Eintrag jeweils den Inhalt der Variablen $datum=>$anl im $param_d['highlight'] drin haben.

gruss alex
 
Alt 30.12.2004, 16:44  
Gast
 
Beiträge: n/a
Standard

$param_d['highlight'] = array(); musst auf jeden Fall machen, egal ob Treffer oder nicht.

Gruß
phpfan
 
Alt 30.12.2004, 16:47  
Gast
 
Beiträge: n/a
Standard

Habe das $param_d['highlight'] = array(); vor der if-Abfrage eingefügt, jedoch bleibt die Fehlermeldung gleich.

gruss alex
 
Alt 30.12.2004, 16:51  
Gast
 
Beiträge: n/a
Standard

Ahhh, bin ich blind. Du benutzt array_push falsch, siehe http://de3.php.net/manual/de/function.array-push.php Die Funktion liefert einen Int-Wert und somit zerschießt du $param_d['highlight_type']

array_push($param_d['highlight_type'],array($datum,$anl));

Die Initialisierung solltest du aber trotzdem drin lassen.

Gruß
phpfan
 
Alt 30.12.2004, 18:10  
Gast
 
Beiträge: n/a
Standard

Danke die Fehlermeldung ist weg

Doch irgendetwas ist immer noch falsch. Wenn ich nach dem Einlesen das Array ausgebe mit
Code:
foreach ($param_d['highlight'] as $key=>$value){
     echo "$key-$value
";
  }
erhalte ich folgendes:
0-Array
1-Array
2-Array
3-Array
4-Array
....

statt

20040924-Konzert
20041115-Meeting

irgendwie liest es etwas falsches ins array rein?

gruss alex
 
Alt 30.12.2004, 18:20  
Gast
 
Beiträge: n/a
Standard

Was erwartest du bei

array_push($param_d['highlight_type'],array($datum,$anl));

Du schiebst ein Array rein und bekommst ein Array raus, alles richtig. $value ist dann auch ein Array.

Gruß
phpfan
 
Alt 30.12.2004, 18:36  
Gast
 
Beiträge: n/a
Standard

Jetzt steh ich glaub auf der Leitung....

wie bekomm ich die richtigen Werte in $param_d['highlight'] rein??

gruss alex
 
Alt 30.12.2004, 19:17  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
foreach ($param_d['highlight'] as $data)
{
   
$p 1;
   foreach (
$data as $value
   {
     echo 
$value;
     if (! (
$p 2))
       echo 
"
"
;
     else
       echo 
" - ";

     
$p++;
   }  

Gruß
phpfan
 
 


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
Turnierbaum aus array erstellen kingflo PHP-Fortgeschrittene 11 30.07.2008 11:32
Nested Sets in ein Mehrdimensionales Array Simon9990 PHP-Fortgeschrittene 2 29.10.2007 17:38
Mehrdimensionales Array zusammen setzen... Hawk PHP Tipps 2008 11 08.10.2007 15:37
Verschachteltes Array: Daten auswählen horstenpeter PHP Tipps 2006 8 14.03.2006 00:12
mehrdimensionales Array "auflösen" PHP Tipps 2006 9 25.01.2006 19:15
Array auslesen andrew22 PHP Tipps 2006 3 21.01.2006 23:06
Array Formatierung PHP Tipps 2006 3 17.01.2006 19:12
Problem beim vergleichen von 2 Arrays PHP Tipps 2005-2 1 06.10.2005 14:25
[Erledigt] schreiben der ausgelesenen daten in ein array sinnvoll? PHP-Fortgeschrittene 1 02.05.2005 11:42
mehrdimensionales Array sortieren PHP Tipps 2005 5 29.04.2005 20:38
Daten aus DB einem eindimensionalen Array zuweisen PHP Tipps 2005 11 28.03.2005 21:38
Array wie auslesen? PHP Tipps 2005 7 07.03.2005 11:43
Zufallausgabe mehrerer Daten aus einem Array PHP Tipps 2005 9 06.03.2005 19:17
:( Aus Array Daten lesen. Aber nur einmal täglich? PHP Tipps 2004 4 18.08.2004 11:38

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php mehrdimensionales array füllen, php zweidimensionales array füllen, php array_push mehrdimensional, php 2 dimensionales array füllen, array_push mehrdimensionales array, array_push mehrdimensional, mehrdimensionales array füllen php, php mehrdimensionales array befüllen, zweidimensionales array füllen php, zweidimensionales array füllen, http://www.php.de/php-tipps-2004-2/15050-mehrdimensionales-array-mit-daten-aus-einer-db-fuellen.html, php array mehrdimensional füllen, mehrdimensionales array aus datenbank, mehrdimensionales array php füllen, php mehrdimensionale arrays füllen, mehrdimensionale arrays füllen, php mehrdimensionale array füllen, array_push php mehrdimensional, mehrdimensionales array befüllen php, 2 dimensionales array php füllen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:11 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.