ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
258
258
EMPFEHLEN
-
03.01.12 15:16 #1
- Registriert seit
- May 2011
- Beiträge
- 3
Hallo...
Ich hab da ein Problem mit einem php Script...
Dieses soll Daten aus einem Formular in eine auf dem Server liegende .csv schreiben. Das funktioniert auch, solange die genannt Datei auf dem Server liegt. Ich möchte jetzt aber dass das Script eine neue .csv schreibt wenn diese noch nicht vorhanden.
PHP-Code:<?php
/*
* Created by Anna Busch/Jan Hoffmann
*/
/**
* Datei Name, wo die Daten gespeichert werden
sollen
*/
$dateiname = 'anfragen/kredit/daten.csv';
/**
* Prüfen ob die Variable ein Wert zugewiesen
wurde. Ansonsten werden diese Variablen
deklariert.
*/
if (!isset($_POST['anrede'])) $_POST['anrede'] = '';
if (!isset($_POST['vorname'])) $_POST['vorname'] = '';
if (!isset($_POST['nachname'])) $_POST['nachname'] = '';
if (!isset($_POST['strasse'])) $_POST['strasse'] = '';
if (!isset($_POST['plz'])) $_POST['plz'] = '';
if (!isset($_POST['ort'])) $_POST['ort'] = '';
if (!isset($_POST['email'])) $_POST['email'] = '';
if (!isset($_POST['telefon'])) $_POST['telefon'] = '';
if (!isset($_POST['beruf'])) $_POST['beruf'] = '';
if (!isset($_POST['kreditvalue'])) $_POST['kreditvalue'] = '';
if (!isset($_POST['kredit_monate'])) $_POST['kredit_monate'] = '';
if (!isset($_POST['verwendung'])) $_POST['verwendung'] = '';
if (!isset($_POST['tag'])) $_POST['tag'] = '';
if (!isset($_POST['zeit'])) $_POST['zeit'] = '';
if (!isset($_POST['kommentar'])) $_POST['kommentar'] = '';
if ( isset($_POST["einwilligung"]) && $_POST["einwilligung"] == "on" ){
// checkbox wurde "ausgewählt"
} else{
// checkbox wurde nicht "ausgewählt"
}
if (!isset($_POST['senden'])) $_POST['senden'] =
'';
$meldung = '';
/**
* Prüfen der Variable $_POST['senden'] ob diese
ein Wert hat.
*/
if ($_POST['senden'] == 'senden') {
/**
* Zeile aufbauen, die in die CSV-Datei am Ende
geschrieben werden soll
*/
$inhalt =
$_POST['anrede'].';'.
$_POST['vorname'].';'.
$_POST['nachname'].';'.
$_POST['strasse'].';'.
$_POST['plz'].';'.
$_POST['ort'].';'.
$_POST['email'].';'.
$_POST['telefon'].';'.
$_POST['beruf'].';'.
$_POST['kreditvalue'].';'.
$_POST['kredit_monate'].';'.
$_POST['verwendung'].';'.
$_POST['tag'].';'.
$_POST['zeit1'].' '.
$_POST['zeit2'].';'.
$_POST['kommentar']."\n";
/**
* Datei öffnen und den Dateizeiger auf das
Ende der CSV Datei legen, wenn die Datei
noch nicht vorhanden ist wird versucht
diese anzulegen. Wichtig ist, dass die
Skriptdatei die Rechte zum anlegen einer
Datei hat.
*/
$handle = @fopen($dateiname, "a+");
/**
* Schreiben der Zeile, in der CSV Datei
*/
fwrite($handle, $inhalt);
/**
* Datei wieder schließen
*/
fclose ($handle);
/**
* Prüfen ob die CSV Datei existiert
*/
if (file_exists($dateiname) == FALSE) {
/**
* Die schreib Rechte ändern bei der CSV
Datei, damit das nächste mal diese
beschrieben werden kann.
*/
@chmod ($dateiname, 0777);
}
/**
* Ausgabemeldung erstellen
*/
$meldung = '<font color="green">Ihre Beratungsanfrage wurde erfolgreich übermittelt.</font>';
}
/**
* Prüfen ob eine Ausgabemeldung in der Variable
$meldung hinterlegt wurde, wenn eine
Ausgabemeldung vorhanden ist wird diese per
Echo ausgegeben.
*/
if ($meldung != '') echo $meldung;
?>Geändert von Jan Hoffmann (03.01.12 um 16:16 Uhr)
-
Modus Funktion Dateizeiger Anlegen?
==========================================================
r Lesen Anfang Nein
r+ Lesen und Schreiben Anfang Nein
w Schreiben Anfang Ja
w+ Lesen und Schreiben Anfang Ja
a Schreiben Ende Ja
a+ Lesen und Schreiben Ende Ja
-
03.01.12 16:06 #3
- Registriert seit
- May 2011
- Beiträge
- 3
Die Schreibmodis hab ich schon alle probiert...
Er gibt dann folgende Fehler aus, wenn die Datei noch nicht vorhanden....
Warning: fwrite(): supplied argument is not a valid stream resource in /www/htdocs/xxxxxx/beispiel.php on line 81
Warning: fclose(): supplied argument is not a valid stream resource in /www/htdocs/xxxxxx/beispiel.php on line 85
-
Also mit
Sollte die Datei neu angelegt werden,PHP-Code:$handle = fopen($dateiname, "a+");
ansonsten musst du chmod vom Ordner anpassen.
Ähnliche Themen
-
INSERT aber nur wenn Datensatz noch nicht vorhanden ist.
Von mafin im Forum Relationale DatenbanksystemeAntworten: 6Letzter Beitrag: 17.12.08, 10:41 -
Hibernate: Objekt nur persistieren, wenn Datensatz noch nicht vorhanden?
Von DarthShader im Forum JavaAntworten: 3Letzter Beitrag: 22.10.07, 08:31 -
mehrere Formen (gleich aufgebaut) öffnen wenn noch nicht vorhanden
Von Fridulin im Forum .NET Windows FormsAntworten: 2Letzter Beitrag: 22.09.07, 10:34 -
Element in Array einfügen, wenn noch nicht vorhanden
Von kampfspatz im Forum CGI, Perl, Python, Ruby, Power ShellAntworten: 1Letzter Beitrag: 29.09.04, 14:04 -
neuen ordner anlegen, wenn noch nicht vorhanden
Von vyanna im Forum PHPAntworten: 4Letzter Beitrag: 19.07.04, 13:02





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren