php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.07.2005, 16:00  
Gast
 
Beiträge: n/a
Standard daten mit positionsangabe einlesen

hallo,

will daten in eine mySQL datenbank einlesen. Wäre ja eigentlich kein Problem, geht ja am schnellsten mit der import funktion in php-myadmin. Bei meinen daten besteht jedoch das problem, dass ich keinerlei delimiter o.ä. habe. Das heisst, ich muss mit positionsangaben arbeiten - finde aber nirgendwo was darüber. Das einzige was ich gefunden habe war das hier:

Code:
$z = file("DE200.out.035");

  echo "<pre>\n";
  for($i=0; $i < count($z); $i++){
    if($z[$i]{0} != '_'){
      $zeile = $z[$i];
      $aLog[$i]["wochentag"] = trim(substr($zeile,0,4));
      $aLog[$i]["tag"] = trim(substr($zeile,4,2));
      $aLog[$i]["monat"] = trim(substr($zeile,7,3));
      $aLog[$i]["jahr"] = trim(substr($zeile,11,4));
      $aLog[$i]["uhrzeit"] = trim(substr($zeile,19,5));
      $aLog[$i]["meldung"] = trim(substr($zeile,28,1));
      
    }
  }
  echo "</pre>\n";

  $handle = mysql_connect("localhost","root","");
  mysql_select_db("cdr_reader");

  for($i=1; $i < count($aLog); $i++){
    $sql =  "insert into rein(log_wt,log_tag,log_monat,log_jahr,log_uhrzeit,log_meldung) values(";
    $sql .= "'".$aLog[$i]["wochentag"];
    $sql .= "'".$aLog[$i]["tag"];
    $sql .= "'".$aLog[$i]["monat"];
    $sql .= "'".$aLog[$i]["jahr"];
    $sql .= "'".$aLog[$i]["uhrzeit"];
    $sql .= "'".$aLog[$i]["meldung"];
(ja, ich weiss, dass die DB noch kein passwort hat...)
zur erklärung: die wertenamen sind rein fiktiv (wochentag etc), da ich das script nur kopiert habe von einem lehrgang auf dem ich mal war. Leider bekomme ich keinerlei fehlermeldung, kann mir also im moment nicht erklären warum nichts in die DB geschrieben wird. Ich weiss auch nicht, ob obiger code das mittel der wahl ist, wenn jemand etwas besseres, einfacheres weiss, wäre ich sehr dankbar.

ein beispiel der daten kann ich leider nicht liefern wegen vertraulichkeit und so. Ich kann dazu aber sagen, dass alle daten direkt aneinander stehen und tatsächlich nur durch ihre (fixen) positionen zu unterscheiden sind.
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 20.07.2005, 16:15  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.781
derHund
Standard

sendest du den query an die db?
__________________
derHund ist offline  
Alt 20.07.2005, 16:37  
Gast
 
Beiträge: n/a
Standard

ker, da sucht man stundenlang nach dem fehler und dann sowat.... hatte ich auskommentiert weil ich irgendwann zwischendurch mal $aLog angucken wollte....

jetzt meckert er nur noch über die syntax....
irgendwas ist mit der klammer falsch

Code:
$sql =  "insert into rein(log_wt,log_tag,log_monat,log_jahr,log_uhrzeit,log_meldung) values(";
    $sql .= $aLog[$i]["wochentag"];
    $sql .= $aLog[$i]["tag"];
    $sql .= $aLog[$i]["monat"];
    $sql .= $aLog[$i]["jahr"];
    $sql .= $aLog[$i]["uhrzeit"];
    $sql .= $aLog[$i]["meldung"]."\")";
 
Alt 20.07.2005, 16:45  
Gast
 
Beiträge: n/a
Standard ende

hallo,

habs zurechtgetüddelt. für alle die sowas vielleicht mal brauchen:

Code:
<table width="70%"  border="1">
  <tr>
    <td width="180"><?
	include "../inc/nav.inc";
?></td>
    <td>
	<!-- Content --!>
	<form enctype="multipart/form-data" action="<? $PHP_SELF ?>" method="post">
    
    Please choose a rawfile

    <input type="file" name="userfile" accept="text/*">

    <input type="submit" name="Aktion" value="Upload starten">
    </form>
	<?
	  include "../inc/mysql_connect.inc";
	if(isset($Aktion))
      {
        //Dateiinfos anzeigen
        echo $userfile."
"; //temporaere Name der Datei! Nicht der echte Name der Datei
        echo $userfile_name."
"; //echte Name der Datei!
        
        
      } 

  $z = file($userfile);

  echo "<pre>\n";
  for($i=0; $i < count($z); $i++){
    if($z[$i]{0} != '_'){
      $zeile = $z[$i];
      $aLog[$i]["wochentag"] = trim(substr($zeile,0,4));
      $aLog[$i]["tag"] = trim(substr($zeile,4,2));
      $aLog[$i]["monat"] = trim(substr($zeile,7,3));
      $aLog[$i]["jahr"] = trim(substr($zeile,11,4));
      $aLog[$i]["uhrzeit"] = trim(substr($zeile,19,5));
      $aLog[$i]["meldung"] = trim(substr($zeile,28,1));
      
    }
  }
  echo "</pre>\n";

  $handle = mysql_connect("localhost","root","");
  mysql_select_db("cdr_reader");

  for($i=1; $i < count($aLog); $i++){
    $sql =  "insert into rein(log_wt,log_tag,log_monat,log_jahr,log_uhrzeit,log_meldung) values(";
    $sql .= "'".$aLog[$i]["wochentag"]."',";
    $sql .= "'".$aLog[$i]["tag"]."',";
    $sql .= "'".$aLog[$i]["monat"]."',";
    $sql .= "'".$aLog[$i]["jahr"]."',";
    $sql .= "'".$aLog[$i]["uhrzeit"]."',";
    $sql .= "'".$aLog[$i]["meldung"]."')";
	
    
    mysql_query($sql);
    echo mysql_error();
  }
	 
  mysql_close();

	
    ?>
  
	</td>
  </tr>
</table>
is noch bischen doppelt gemoppelt mit sql-connect und sowas aber läuft
 
 


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
Mehrere Arrays unterschiedlicher Größe kombinieren querfisch PHP Tipps 2007 9 31.03.2007 21:34
Einlesen von Daten in Formular Fragenfrager PHP Tipps 2006 3 14.08.2006 10:11
Session Frage - gleiches Formular 2 mal alle Daten behalten NetLook PHP Tipps 2007 1 21.11.2005 18:42
speicherung der daten bei stromausfall? MrCavity Datenbanken 2 19.11.2005 17:39
[Erledigt] sql daten für einen kunden auslesen/ändern im Formular PHP Tipps 2005-2 3 12.10.2005 08:36
Daten einlesen MySQL und PHP PHP Tipps 2005-2 10 28.09.2005 15:42
Daten aus Datenbank einlesen... PHP Tipps 2005-2 2 26.09.2005 18:16
Daten auslesen und ändern Datenbanken 2 17.09.2005 19:28
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
[Erledigt] Wie Daten aus csv-Datei in DB einlesen? Datenbanken 2 12.09.2005 13:00
Daten in Datenbank ändern PHP Tipps 2005 3 27.01.2005 14:40
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
[Erledigt] Daten in Datenbank einlesen Datenbanken 2 08.08.2004 13:31
Daten aus Html-Formular in eine php-Datei einlesen PHP Tipps 2004 9 09.07.2004 20:02
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45


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