Seite 1 von 1

per PHP Textdatei entstehen lassen

Verfasst: 05.05.2003 17:46
von Hamed
Hallo Leute,

ich weiss dass es einfach zu lösen ist, aber ich selber konnte es nicht :-))

ich will über ein html interface mit eingabefeldern beim klicken eines buttons eine neue datei entstehen lassen, die informationen die der user eingebeen hat sollen wie folgt gespeichert werden :


1110,"45","456","879678","45646","789789","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""

Also die erste Information, dann ein Komma, dann Anführungszeichen oben, dann die zweite eingebe INformation, dann wieder Anführungszeichen und so weiter.


Kann mir da jemand weiterhelfen ??
Wäre seeeeeeeeeehr dankbar....


wer noch fragen hat, kann mir ja noch ne mail schicken : hamedf@web.de

vielen dank leute

hamed

Sorry

Verfasst: 05.05.2003 17:49
von Hamed
Sorry, so muss das ganze aufgebaut sien :


"1110","45","456","879678","45646","789789","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""


Also schon am Anfang mit Anführungszeichen

danke
Hamed

Verfasst: 05.05.2003 21:58
von Steffen

Code: Alles auswählen

if($fp = @fopen($filenane,'w'))
{
  $content = "\" . $wert1 . \",";
  $content .= "\" . $wert2 . \",";
  $content .= "\" . $wert3 . \",";
  .
  .
  .
  $content .= "\" . $wert(n) \"";

  if(@fwrite($fp,$content)) echo "Datei wurde geschrieben.";
  else                      echo "Datei konnte nicht geschrieben werden."
  @fclose($fp);
}
else echo "Datei konnte nicht geöffnet werden.

Verfasst: 05.05.2003 22:11
von Jensemann
Ich würde empfehlen am ende noch "; dranzuhängen, sonst musst du die zendengine anpassen ;)

Jens

Verfasst: 05.05.2003 22:25
von Steffen
Hoch Gott, ja. Scheiße, wenn man den Code sich hier live ausdenkt und nicht testet.

Aber da bin ich ja nicht der einzige. In den letzten beiden Snapshots für's phpBB 2.2 fehlt in der /install/schemas/mysql_schema.sql fehlt in Zeile 245 auch ein ;

Außerdem werden die Funktionen page_header und page_footer doppelt definiert, weil zuerst die /includes/functions.php included wird, wo die beiden definiert werden aber für die /install/install.php dann nocheinmal 'ne andere Funktion mit gleichem Namen mit ähnlicher Bestimmung, aber seperat für die Installation konzipiert, definiert wird.

So, jetzt hab' ich's euch aber gegeben. ;)

@Hamed: Mit dem "; am Ende meines Codes funktioniert es dann.

Danke

Verfasst: 09.05.2003 20:07
von HamedF
Hallo Steffen, danke für deine Hilfe..


also ehrlich gesagt weiss ich nicht ganz wie ich das einzusetzen habe *g*

Kannst du mir sagen wie ich eine html datei machen muss, wo man die daten eingeben kann, und mit nem klick auf abschicken wird die datei automatisch erstellt und die daten wie oben beschrieben eingeben ?


wäre echt cool
danke dir

Hamed

Verfasst: 10.05.2003 01:13
von Steffen
Du baust eine PHP-Datei für eben diese Funktion. Die könnte in etwa so aussehen:

Code: Alles auswählen

<html>

 <head>

  <title>Eingabe</title>

 </head>

 <body>

<?php
if(isset($submit) AND $submit == 'Abschicken')
{
  if($fp = @fopen($filename,'w')) 
  { 
    $content = '\" . $content1 . \",'; 
    $content .= '\" . $content2 . \",'; 
    . 
    . 
    . 
    $content .= '\" . $contentn \"';

    if(@fwrite($fp,stripslashes($content))) echo 'Datei wurde geschrieben.';
    else                                    echo 'Datei konnte nicht geschrieben werden.';

    @fclose($fp); 
  } 
  else echo 'Datei konnte nicht ge&ouml;ffnet werden.';
}
else
{
  echo '<form action="' . $PHP_SELF . '" method="post">';
  echo 'Feld1: <input type="text" name="content1" /><br />';
  echo 'Feld2: <input type="text" name="content2" /><br />';
  .
  .
  .
  echo 'Feldn: <input type="text" name="contentn" /><br />';
  echo 'Dateiname: <input type="text" name="filename" /><br />';
  echo '<input type="submit" name="submit" value="Abschicken" />';
  echo '</form>';
}
?>

 </body>

</html>
Wenn die Anzahl der Felder, die durch Kommata getrennt in die Datei geschrieben werden sollen, konstant ist, kannst du das so machen. Ansonsten müsste man vorher die Anzahl der Felder eingeben und danach das Formular entsprechend ausgeben lassen, was dann für die Eingabe benötigt wird, was etwas komplizierter ist.

Wenn es nicht schlimm ist, könnte man die Werte auch so wie du sie in der Datei stehen haben willst, in nur ein Eingabefeld eingeben. Das könnte dann so aussehen:

Code: Alles auswählen

<html>

 <head>

  <title>Eingabe</title>

 </head>

 <body>

<?php
if(isset($submit) AND $submit == 'Abschicken')
{
  if($fp = @fopen($filename,'w'))
  { 
    if(@fwrite($fp,stripslashes($content))) echo 'Datei wurde geschrieben.';
    else                                    echo 'Datei konnte nicht geschrieben werden.';

    @fclose($fp); 
  }
  else echo 'Datei konnte nicht ge&ouml;ffnet werden.';
}
else
{
  echo '<form action="' . $PHP_SELF . '" method="post">';
  echo '<textarea name="content">"1110","45","456", ...</textarea>';
  echo 'Dateiname: <input type="text" name="filename" /><br />';
  echo '<input type="submit" name="submit" value="Abschicken" />';
  echo '</form>';
}
?>

 </body>

</html>

Verfasst: 10.05.2003 01:48
von itst
Steffen hat geschrieben:Hoch Gott, ja. Scheiße, wenn man den Code sich hier live ausdenkt und nicht testet.

Aber da bin ich ja nicht der einzige. In den letzten beiden Snapshots für's phpBB 2.2 fehlt in der /install/schemas/mysql_schema.sql fehlt in Zeile 245 auch ein ;

Außerdem werden die Funktionen page_header und page_footer doppelt definiert, weil zuerst die /includes/functions.php included wird, wo die beiden definiert werden aber für die /install/install.php dann nocheinmal 'ne andere Funktion mit gleichem Namen mit ähnlicher Bestimmung, aber seperat für die Installation konzipiert, definiert wird.

So, jetzt hab' ich's euch aber gegeben. ;)
1. Nicht uns.
2. Snapshots sind Entwicklerversionen. Da sind zwangsläfig Fehler drin.

Verfasst: 11.05.2003 14:45
von Hamed
Hallo Steffen,

erstmal vielen Dank für deine bis jetzt geleistete Arbeit :-)

Ich bin kurz am Ziel, aber noch nicht ganz, also ich versuch nochmal zu verdeutlichen was ich eigentlich brauche:

ich hab ein programm zum ausdrucken von formularen ( zum beispiel bank überweisungen ) .. das programm importiert die daten, die dann in die einzelnen felder kommen, über eine cvs datei

man kann zwar die daten auch in dem programm selber eingeben, aber das ist sehr umständlich, deswegen habe ich mir überlegt, über eine weboberfläche die daten eingeben zu können, also alles als variabeln, und dann per click auf abschicken kreiert das script dann eine cvs datei, die dann nur in das programm zu intergrieren wäre


wie schon gesagt, die daten müssen nach dem oben genannten prinzip gespeichert werden.

ich hab mir das so vorgestellt, dass das script wie ein ganz normales formular im web ( zum beispiel eine anmeldung ) die daten einzelnd abfragt und dann in eine datei speichert..

wisst / weisst du was ich meine ?
:-?

ich hoffe dass das nicht zu schwer oder zu viel ist für dich und das du mir da weiterhelfen kannst

vielen dank leute im vorfeld

euer hamed :-D

Verfasst: 11.05.2003 14:48
von itst
Was passt denn an Steffens Code nicht?