| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

14-06-2007, 16:15
|
|
gamer98765
Newbie
|
|
Registriert seit: Jun 2007
Beiträge: 12
|
|
Exportieren in Csv
HAllo
Ich habe hier ein Script vorliegen was per snoopyclass und preg_match den quelltext dursucht!
Quelltext
Code:
Name: Game
Letzte Aktion: 14.06.2007 12:22:24
Punkte: 132979
Rang: 11
Kiff-Inc Vierling h0m0sapiens
Als Beispiel mal der Code der,der das Datum der Letzten Aktion heraus sucht!
Code:
preg_match_all("/[0-9]{2,2}.[0-9]{2,2}.[0-9]{4}/",$text,$test);
Diese Code sucht den Usernamen raus!
Code:
preg_match ("^Name:.+^",$text,$username)
ALs nächstes Möchte ich die Ergebnisse in eine Csv. exportieren!
Code:
$filename = $form_file.'.csv';
$nl = chr(13) . chr(10);
if (!$handle = fopen($filename, "ab")) {
print "Kann die Datei $filename nicht öffnen";
exit;
}
for($i=0;$i<count($regs[0]);$i++){
$x = strtok ($regs[0][$i],":");
$y = strtok (":");
$d = strtok
($test[0][$i],":");
$Yd = strtok ($dd,":");
$cc = strtok
($username][0][$i],":");
if (!fwrite($handle, $x.";".$y.";".$d.";".$Yd.";".$cc.$nl)) {
print "Kann in die Datei $filename nicht schreiben";
exit;
}
$anzahl =$i+1;
}
fclose($handle);
echo $anzahl." Koords wurden gefunden";
Beim Datum funktioniert es!
Beim Namen nicht !
Beim Namen wird mir in Der Csv Array anstatt dem NAmen angezeigt!
Wer kann mir helfen?
|

14-06-2007, 16:20
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.283
|
|
Dann dumpe mal $username. Du hast versucht ein Array und nicht ein Array Element in den String zu schreiben. Du greifst also falsch auf das Element zu
PHP-Code:
var_dump($username);
kann Licht ins Dunkel bringen
Gruss
tobi
|

14-06-2007, 16:20
|
|
RanzigeMilch
Registrierter Benutzer
|
|
Registriert seit: May 2005
Ort: Darmstadt
Beiträge: 757
|
|
mist da war er schneller
__________________
Die Milch bleibt ranzig!
|

14-06-2007, 16:26
|
|
Wyveres
Registrierter Benutzer
|
|
Registriert seit: Dec 2006
Ort: Rügen
Beiträge: 763
|
|
PHP-Code:
($username][0][$i],":");
ich geh mal davon aus das es nachträglich Editiert wurde. ansonsten ist da eine eckige Klammer zuviel.
|

14-06-2007, 16:35
|
|
gamer98765
Newbie
|
|
Registriert seit: Jun 2007
Beiträge: 12
|
|
Ahm und an welche Stell im COde muss ich den dump schreiben ?
Zitat:
|
Parse error: parse error, unexpected T_STRING in F:\xampp\xampp\htdocs\jw_public\details.php on line 149
|
das sind line 148-150
PHP-Code:
preg_match ("^Name:.+^",$text,$username)
var_dump($username);
$filename = $form_file.'.csv';
|

14-06-2007, 16:37
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

14-06-2007, 16:37
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Du solltest erst mal die Grundlagen der Syntax lernen - damit du nicht selbst für solchen Kleinkram wie ein vergessenes Semikolon hinter einer Zeile hier nachfragen musst.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

14-06-2007, 16:48
|
|
gamer98765
Newbie
|
|
Registriert seit: Jun 2007
Beiträge: 12
|
|
Zitat:
Original geschrieben von wahsaga
Du solltest erst mal die Grundlagen der Syntax lernen - damit du nicht selbst für solchen Kleinkram wie ein vergessenes Semikolon hinter einer Zeile hier nachfragen musst.
|
Schuldigung ahb ich übershen ich dachte es läge an dem neu eingebauten dump
ALso Ich habe die variable jetzt gedumped
PHP-Code:
if(isset($form_jsid)) {
$exec_time_all = microtime(1);
echo "INFO: Beginne mit Koordinatenextraktion<br>";
forceFlush();
$snoopy->fetchtext("http://www.jw-s4.net/userdetails.php?id=".$dd);
if(ereg("Ernterberechnung",$snoopy->results)) { echo "EB. Muss warten"; forceFlush(); }
$text = $snoopy->results;
preg_match_all("/[0-9]{1,3} : [0-9]{1,3}/",$text,$regs);
preg_match_all("/[0-9]{2,2}.[0-9]{2,2}.[0-9]{4}/",$text,$test);
preg_match ("^Name:.+^",$text,$username);
var_dump($username); //
$filename = $form_file.'.csv';
$nl = chr(13) . chr(10);
if (!$handle = fopen($filename, "ab")) {
print "Kann die Datei $filename nicht öffnen";
exit;
}
for($i=0;$i<count($regs[0]);$i++){
$x = strtok ($regs[0][$i],":");
$y = strtok (":");
$d = strtok ($test[0][$i],":");
$Yd = strtok ($dd,":");
$cc = strtok ($username,":");
if (!fwrite($handle, $x.";".$y.";".$d.";".$Yd.";".$cc.$nl)) {
print "Kann in die Datei $filename nicht schreiben";
exit;
}
$anzahl =$i+1;
}
fclose($handle);
echo $anzahl." Koords wurden gefunden";
Hier der Dump ????
Mit dem Dump an dieser Stelle ist alles wie vorher in der csv gibt er mir Array aus anstatt dem Usernamen!
ISt der Dump an der falschen Stelle? Hier der Dump
|

14-06-2007, 16:59
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.283
|
|
Und was ergibt denn der dump ? ggf nach dem dumpen noch ein exit; rein damit der Code nicht weiter ausgeführt wird.
|

14-06-2007, 17:00
|
|
RanzigeMilch
Registrierter Benutzer
|
|
Registriert seit: May 2005
Ort: Darmstadt
Beiträge: 757
|
|
sag nicht du hast im csv nach der ausgabe von var_dump gesucht?
weißt du was var_dump bewirkt?
__________________
Die Milch bleibt ranzig!
|

14-06-2007, 17:16
|
|
gamer98765
Newbie
|
|
Registriert seit: Jun 2007
Beiträge: 12
|
|
ich habe nur var_dump($username);
eingeben weil jahlives mir sagte das :
Zitat:
Original geschrieben von jahlives
Dann dumpe mal $username. Du hast versucht ein Array und nicht ein Array Element in den String zu schreiben. Du greifst also falsch auf das Element zu
PHP-Code:
var_dump($username);
kann Licht ins Dunkel bringen
Gruss
tobi
|
Zu diener Frage ich ahbe Keine ahnung was nen Dump bringt!
Ich muss es nur schaffen das in der csv nicht"Array" sondern das Sucherergebeniss (USername) steht!
|

14-06-2007, 18:06
|
|
keppi2
Newbie
|
|
Registriert seit: Oct 2005
Beiträge: 25
|
|
var_dump gibt dir die Struktur der übergeben Variable zurück,
also musst du einmal schauen was die Seite ausgibt wenn du sieh öffnest.
Außerdem würde ich Tips nicht einfach abschreiben, sondern mal im Manuel nach der Funktion suchen und sich anschauen was die wirklich bewirkt, du willst doch etwas dabei lernen oder nicht?
Mfg Keppi
Geändert von keppi2 (16-12-2008 um 17:10 Uhr)
|

14-06-2007, 19:16
|
|
gamer98765
Newbie
|
|
Registriert seit: Jun 2007
Beiträge: 12
|
|
Sehe ich das richtig das preg_match_all mir das suchergebniss als array ausgibbt?
Muss ich die daten (array)um sie in eine Csv. zu exportieren zu einem String umwandeln oder was muss cih tun?
|

14-06-2007, 19:31
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
Zitat:
|
Sehe ich das richtig das preg_match_all mir das suchergebniss als array ausgibbt?
|
ja
Zitat:
|
...zu einem String umwandeln oder was muss cih tun?
|
den teil des arrays über den numerischen index auswählen, den du brauchst.
tipp:
PHP-Code:
preg_match ("^Name:.+^",$text,$username);
echo $username[0];
gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

14-06-2007, 20:20
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.283
|
|
@topicstarter
Noch einen Tipp und den kannste genau so abschreiben  : Gewöhn dir an während der Entwicklung dein Error Reporting einzustellen. Schreib also als erste Zeile deiner PHP Files
PHP-Code:
error_reporting(E_ALL);
//Rest deines Codes
Damit zeigt dir PHP alle möglichen Fehler an.
Gruss
tobi
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
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.
HTML-Code ist aus.
|
|
|
|
PHP News
|