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 ::

Der CSS-Problemlöser

Der CSS-Problemlöser 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
Hilfe Community Kalender Heutige Beiträge Suchen

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

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.11.2006, 11:40:40
wild wild ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 6
Array-Wert wird verschluckt

Hallo liebe PHP-Community

ich habe ein Problem mit Werten die aus einem Array kommen und zwar wenn ich diese Werte als Index weiter verwenden will, werden sie nicht übergeben.

als erstes sollte ich erwähnen, dass der eine Array die Position von Spaltenüberschriften beinhaltet - also in welcher Spalte welche Informationen der Tabelle zufinden sind. Zusätzlich werden in diesem Array noch andere Daten mitübergeben, aber um diese geht es nicht.
PHP-Code:
$tmp $spalten['0'//$spalten['0'] enthällt die Positionen der Spaltenüberschriften

$name $zeile[$tmp['0']] //$zeile enthällt die Infos der oben erwähnten Tabelle 
genau an dieser Stelle wird kein Wert übergeben. Gebe ich $tmp['0'] aus, enthällt es einen Wert. Wieso zur Hölle wird der Wert verschluckt und kann nicht als Index interpretiert werden? :/

PHP-Code:
$name $zeile[$spalten['0']['0']] 
funktioniert ebenfalls nicht, deshalb habe ich den Array wie oben ausgegliedert. Wird auch hier der Array $spalten ausgegeben sind alle Werte vorhanden.

mein letzter Versuch zuzuordnen ging über eine foreach Geschichte, allerdings ebenfalls ohne Wirkung:
PHP-Code:
foreach ($tmp as $k => $value) { 
  if (
$k == 0) {
    
$name $zeile[$value];
  } elseif (
$k == 1) {
    
$xy $zeile[$value];
  } [...]

ich habe auch schon andere Schreibweisen durchprobiert. Z.B. $spalten[0][0] ohne " ' ".. nix keine änderung. ich wäre euch wirklich sehr verbunden wenn euch Lösungsansätze einfallen würden oder ihr mir meine Fehler egal welcher Art aufzeigt. Und ja, wenn ich der $zeile['1'] den Index 1 "hart" zuweise greift er auf die 2. Spalte zu; wie gewollt - aber wieso funktioniert es über die Variablenzuweisung nicht?

mfG
wild

Geändert von wild (20.11.2006 um 11:45:47 Uhr)
Mit Zitat antworten
  #2  
Alt 20.11.2006, 12:06:12
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Array-Wert wird verschluckt

Wie sind die Arrays $spalten und $zeilen aufgebaut?
PHP-Code:
print_r($spalten);
print_r($zeilen); 
Mit Zitat antworten
  #3  
Alt 20.11.2006, 12:25:36
wild wild ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 6
AW: Array-Wert wird verschluckt

$zeile besteht aus den spaltenelementen der gerade ausgelesen zeile aus der tabelle.

und $spalten sieht so aus:

Zitat:
Array
(
[0] => Array
(
[0] => 4
[1] => 6
[2] => 7
[3] => 15
[4] => 0
[5] => 1
[6] => 2
[7] => 3
[8] => 27
[9] => 20
[10] => 5
[11] => 7
[12] => 5
[13] => 24
[14] => 25
[15] => 32
[16] => 14
)

[1] => /abc/datei_xy.csv
[2] => ;
)
deswegen auch spalten[0]. da die anderen felder nicht relevant sind.
Mit Zitat antworten
  #4  
Alt 20.11.2006, 12:39:47
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Array-Wert wird verschluckt

Zitat:
Zitat von wild Beitrag anzeigen
PHP-Code:
$name $zeile[$spalten['0']['0']] 
1. '0' ist ein String, 0 ist eine Zahl.
2. füge in Dein Script ganz oben ein error_reporting(15) und schalte die Fehlerausgabe ein.

btw: Dein Arrayaufbau ist mir immer noch etwas schleierhaft. Was treibt Dein Script mit einer *.csv Datei?
Mit Zitat antworten
  #5  
Alt 20.11.2006, 12:46:04
wild wild ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 6
AW: Array-Wert wird verschluckt

Zitat:
Zitat von meikel Beitrag anzeigen
[...]
btw: Dein Arrayaufbau ist mir immer noch etwas schleierhaft. Was treibt Dein Script mit einer *.csv Datei?
öhm ja. ich lese diese datei aus & sie entspricht meiner oben erwähnten "tabelle" - des bleibt allerdings nebensache ;)

jo. ich füg mal dieses error reporting ein. danke für die hilfe- bisher^^
Mit Zitat antworten
  #6  
Alt 20.11.2006, 12:51:55
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Array-Wert wird verschluckt

Zitat:
Zitat von wild Beitrag anzeigen
öhm ja. ich lese diese datei aus & sie entspricht meiner oben erwähnten "tabelle" - des bleibt allerdings nebensache ;)
Die Nebensache scheint mir eher das Hauptproblem zu sein, weil es nämlich ein Klacks ist, beim Lesen des CSV Files gleich das gewünschte Array zu füllen.
Ich hoffe doch, daß Du wenigstens fgetcsv() zum Lesen verwendest.
Mit Zitat antworten
  #7  
Alt 20.11.2006, 13:48:07
wild wild ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 6
AW: Array-Wert wird verschluckt

sry dachte das muss ich net erwähnen:

PHP-Code:
while($zeile fgetcsv($f,10000,$spalten[2])) {

  for(
$x=0;$x<count($zeile);$x++)    {
    
//zuweisungen:
    
$name $zeile[$tmp['0']];
    
// uvm.
  
}
//[I]inserts, updates, usw.[/I]


zur error ausgabe:
also viel geholfen hats bisher nicht. es gibt mir ein paar fehler von undefinierten variablen/konstanten aus
Zitat:
Notice: Undefined variable: xy on line 153
Notice: Use of undefined constant xy on line 347
diese "warnungen" werde ich grad mal beheben - aber des hat nix mit meinem problem zu tun, dass die werte irgendwie nicht als index aktzeptiert werden oder doch? :o

Geändert von wild (20.11.2006 um 13:49:09 Uhr)
Mit Zitat antworten
  #8  
Alt 20.11.2006, 18:13:25
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Array-Wert wird verschluckt

Zitat:
Zitat von wild Beitrag anzeigen
sry dachte das muss ich net erwähnen:
1. Warum erstellst Du innerhalb der Schleife nicht gleich das andere Array mit?
2. was soll das innerhalb der Schleife? $name = $zeile[$tmp['0']];
"Doppelt genäht, hält besser. 20 * hält noch besser."
Mit Zitat antworten
  #9  
Alt 21.11.2006, 08:55:27
wild wild ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 6
AW: Array-Wert wird verschluckt

weil die Zuweisungen sich innerhalb der for-schleife nur auf die positionen der spalten beziehen.. ich möchte z.B. auch aus jedem spaltenelement bestimmte zeichen entfernen. den index(laufvariable) kann ich zwar auch in der while schleife erstellen, aber ich hab nunmal zuerst den weg über die for-schleife gewählt, da mir dort mein zähler $x direkt zur verfügung stand.
jaja - schmunzelt ruhig. =P

PHP-Code:
$sz = array ("'" => " ""`" => " " "Ž" => " ");
$zeile[$x] = strtr($zeile[$x], $sz); 
aber ich werds auch mal ohne for-schleife probieren. stimmt schon irgendwie doppelt gemoppelt ;)

Zitat:
Zitat von meikel Beitrag anzeigen
[...]
"Doppelt genäht, hält besser. 20 * hält noch besser."
wozu diese ironie? xD

... so nun zum Werte-Verschlucken-Problem... hab es irgendwie geschafft, dass es jetzt funktioniert. ich glaube es lag daran, dass die $zeile nicht unterteilt wurde und zwar weil ein falscher "seperator" übergeben wurde..

naja. trotzdem danke für die mühen

mfG

Geändert von wild (21.11.2006 um 08:56:32 Uhr)
Mit Zitat antworten
  #10  
Alt 21.11.2006, 09:21:33
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Array-Wert wird verschluckt

Zitat:
Zitat von wild Beitrag anzeigen
... jaja - schmunzelt ruhig. =P
Jau. Is'n büschen umständlich, was Du da treibst, auch wenn ich weder die Datenquelle noch das Ziel der Bemühungen kenne.

Zitat:
wozu diese ironie? xD
Es lag nahe...

Zitat:
... so nun zum Werte-Verschlucken-Problem... hab es irgendwie geschafft, dass es jetzt funktioniert. ich glaube es lag daran, dass die $zeile nicht unterteilt wurde und zwar weil ein falscher "seperator" übergeben wurde..

naja. trotzdem danke für die mühen
Wenn ich Dich mal an das erinnern darf:
Zitat:
öhm ja. ich lese diese datei aus & sie entspricht meiner oben erwähnten "tabelle" - des bleibt allerdings nebensache ;)
Wie sagte Murphy: "Bei einer beliebigen Berechnung erweist sich die Größe, deren Richtigkeit für alle außer Frage stand, am Schluß als Fehlerquelle."
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wert aus einem Array löschen jan84 PHP Grundlagen 3 07.12.2011 22:34:13
array verliert den wert Stifler PHP Grundlagen 13 11.04.2005 20:23:35
Einzelne Daten aus Textdatei Auslesen azubinator PHP Grundlagen 153 17.12.2004 13:36:58
Wert in Array finden Heavenfighter PHP Grundlagen 1 05.02.2004 17:45:53
Array bei onClick einen weiteren Wert anhängen pun PHP für Fortgeschrittene und Experten 9 07.04.2003 15:28:03


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:49:57 Uhr.


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


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