php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.04.2005, 11:46  
Neuer Benutzer
 
Registriert seit: 01.01.2005
Beiträge: 16
phpwiki
Standard Assoziatives Array auslesen

Ich habe einen ADODB-Query in einer Funktion verpackt:

Code:
$result = $db->GetAssoc($query);
return $result;
Ich ich füttere die Funktion mit dem Query

Code:
SELECT ID, LEFT(VORNAME,1)+LEFT(NACHNAME,14) as ANAME, NACHNAME FROM AUTHORS ORDER by NACHNAME ASC"
Das Ergebnis kommt per return in einem Assoziativen Arry zurück:
print_r($result) liefert:
Array (
[19] => Array ( [0] => VNachname1 [1] => Nachname1 )
[11] => Array ( [0] => RNachname2 [1] => Nachname2 )
[27] => Array ( [0] => TDer Zweite [1] => Der Zweite )
[20] => Array ( [0] => HNachname3 [1] => Nachname3 )
)
Ich würde das Array gerne in der Form
Code:
foreach ( $result as $key ) {
print $result[$key]->ANAME . $result[$key]->NACHNAME; }
ansprechen.

Ergebnis: Warning: Illegal offset type in /usr/local/web/htdocs/status_advanced_oben.php on line 29

Vielleicht hat jemand eine Idee, was ich da falsch mache?

tom
phpwiki ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 21.04.2005, 12:09  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

was soll der -> da? sprichst du ein array oder ein objekt an? btw seh ich oben in der struktur dass dieses GetAssoc ein komisches rray zurückliefert, wozu getrennt key und value in nem element des arrays, wenn der spaltennamer sinniger weise besser als index aufgehoben ist.
robo47 ist offline  
Alt 21.04.2005, 12:17  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Ich kenne natürlich deine gatAssoc()-Methode nicht, aber was sie zurückliefert, ist offensichtlich kein assotiatives, sondern ein nummerisches Array. Und das musst du natürlich auch über nummerische Indizes abfragen.
Und was das $result in der foreach-Schleife verloren hat, ist unabhängig von der Art des Arrays, absolut unersichtlich.
__________________
Gruss
L
lazydog ist offline  
Alt 21.04.2005, 13:18  
Neuer Benutzer
 
Registriert seit: 01.01.2005
Beiträge: 16
phpwiki
Standard

Es ist nicht "meine" getAssoc, sondern die von AdoDB - identisch wohl auch mit der von Pear, und die liefern wirklich ein numerisches Array zurück, grmblfz.

Ansonsten: Ich stehe mit Arrays auf Kriegsfuss, das -> war ein Überbleibsel der vorigen Syntax, die mit einem DB-Objekt arbeitete.

Fazit: getAssoc hört sich in der Doku schön an, liefert aber nicht das, was es soll.
Ich habs jetzt folgendermassen gelöst:

Funktion query:
PHP-Code:
<?php
if(!$res $db->Execute($query)) die (showSqlError($sql));
while(!
$res->EOF
    {
    
$row $res->GetRowAssoc($toUpper=true);
    
$result[$row['ID']]=$row;
        
$res->MoveNext();
    }
return 
$result;
?>
Dann klappts auch mit
PHP-Code:
<?php
print $result[$key][ANAME];
?>
Danke für die Hints,

tom
phpwiki ist offline  
Alt 21.04.2005, 13:27  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

bitte wenn du schon beim entwickeln bist folgendes beachten:

error-reporting
Zum testen von Scripts setzt man normalerweise am anfang des scripts (oder direkt in einer config-datei die immer Includet wird)
PHP-Code:
error_reporting(E_ALL); 
damit werden dann alle Fehler ausgegeben.

und die fehler die dann auftreten kannst du mit den 2 FAQ-Einträgen korrigieren:

http://php-faq.de/q/q-fehler-variable.html
php-faq.de/q/q-fehler-konstante.html

mfg
robo47
robo47 ist offline  
 


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
Dynamisch Array aus MySQL mit PHP auslesen. Muuip PHP Tipps 2008 2 26.08.2007 21:19
Zweidimensionales Array auslesen u wieder in Array schreiben Lobo PHP Tipps 2006 7 20.04.2006 11:37
[Erledigt] array im array auslesen PHP Tipps 2006 3 15.03.2006 21:33
Array auslesen andrew22 PHP Tipps 2006 3 21.01.2006 23:06
Array Formatierung PHP Tipps 2006 3 17.01.2006 19:12
assoziatives Array aus Datei PHP Tipps 2005-2 2 20.10.2005 19:21
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 in Session speichern und wieder auslesen Riot PHP Tipps 2005-2 3 08.07.2005 11:43
Array wie auslesen? PHP Tipps 2005 7 07.03.2005 11:43
[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
assoziatives Array aus 2 Spalten aus Mysql-Tabelle PHP Tipps 2004 2 14.06.2004 13:46

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php assoziatives array auslesen, assoziatives array auslesen, php getassoc, php assoziative arrays auslesen, getassoc, assoziatives array auslesen php, http://www.php.de/php-tipps-2005/21649-assoziatives-array-auslesen.html, assoziatives array php auslesen, adodb getassoc, php assoziatives array durchlaufen, assoziative arrays auslesen, php assoziatives array key ausgeben, php assoc array auslesen, assoziatives array durchlaufen php, array auslesen php, adodb assoziatives array, assoc array auslesen php, assoziative arrays php auslesen, php assoziatives array abfragen, assoziative arrays auslesen php

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