Php datei erstellen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
argument
code
dank
datei
dateiname
datum
domain
email
erstellen
fehler
frage
index
info
inhalt
not
packen
test
url
verbinden
zeichen
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
<?PHP
$config = '
<?php
$title = "bal";
$layout = "green";
?>
';
$fp = fopen("config.php","w");
flock($fp,2);
fputs($fp,$config);
flock($fp,3);
fclose($fp);
?> -
ja also er sollte die erstellen und dann auch die inhalte von einer post anweisung einbetten also so wie die datenbank infos bei phpbb2
-
$inhalt = "
<?php\n
\$db_host = \"$db_host\";\n
\$db_tabelle = \"$db_table\";\n
\$db_user = \"$db_user\";\n
\$db_passwort = \"$db_pw\";\n
\$lcdbpass = \"$lcdbpass\";\n
?>";
$write = fopen("config.php", "w");
fputs($write, $inhalt);
fclose ($write);
durch \n wird ne leerzeile eingef?gt!
der rest is ja ersichtlich -
Ok danke dir. Mal schaun ob es klappt wenn nicht melde ich mich hier wenn ja dann nicht
-
brauchst keine doppelpost zu machen
es klappt auf jeden fall :D
is schlie?lich selbst geproggt und im einsatz -
ICh muss die jetzt aber noch vorher mit dem code ?ber deinem erstellen lassen oder?
-
???
mein code erzeugt eine datei namens config.php, und darein schreibt er den inhalt in $inhalt
die datei wird automatisch erstellt, falls sie nich existiert, falls sie existiert wird sie ersetzt!
$dateiname = "config.php";
$inhalt = "
<?php\n
\$db_host = \"$db_host\";\n
\$db_tabelle = \"$db_table\";\n
\$db_user = \"$db_user\";\n
\$db_passwort = \"$db_pw\";\n
\$lcdbpass = \"$lcdbpass\";\n
?>";
$write = fopen("$dateiname", "w");
fputs($write, $inhalt);
fclose ($write); -
Der erstellt bei mir aber die datei net bzw. schreibt deswegen raus :
Warning: fopen(config.php): failed to open stream: Permission denied in /var/www/web200/html/test/index.php on line 35
Warning: fputs(): supplied argument is not a valid stream resource in /var/www/web200/html/test/index.php on line 36
Warning: fclose(): supplied argument is not a valid stream resource in /var/www/web200/html/test/index.php on line 37 -
komisch bei mir funtzt det, aber probs ma mit w+, anstatt w
http://www.selfphp.info/funktionsreferenz/dateisystem_funktionen/fopen.php -
Wann muss ich eiegtnlich bei den befehlen \ setzen? weil ich habe da auch if schleifen drin
-
bitte formuliere deine frage mal gezielter am besten mit code, dann versteht man deine frage besser
-
ich habe gefragt wo die zeichen \ wie sie z.B. hier sind \$lcdbpass = \"$lcdbpass\";\n hin m?ssen und wann. weil ich habe jetzt in dem skript noch eine if schleife eingebaut
-
post den code ma hierhin pls
\ musst du vor alle sonderzeichen f?r php packen
also " wird zu \" $ wird zu \$ usw. -
Das ist momentan der code:
<?php
$dateiname = "config.php";
$inhalt = "
<?php\n
\$dbhost = \'$_POST[dbhost]\';\n
\$dbname = \'$_POST[dbname]\';\n
\$dbuser = \'$_POST[dbuser]\';\n
\$dbpasswd = \'$_POST[dbpasswd]\';\n
\$db_link = @mysql_connect($dbhost,$dbuser, $dbpasswd);\n
if (!$db_link) {\n
echo $error[0]; \n
die('Fehler beim Verbinden');\n
}\n
\n
$db_select = @mysql_select_db($dbname);\n
if (!$db_link) {\n
echo $error[1];\n
die('Fehler beim DB-ausw?hlen');\n
}\n
\n
\$admin_name = \'$_POST[admin_name]\';\n
\$admin_password = \'$_POST[admin_password]\';\n
\$admin_cookie_code = \'$_POST[admin_cookie_code]\';\n
\n
\$url = \'$_POST[url]\';\n
\$bookmark_description = \'$_POST[bookmark_description]\';\n
\n
\$domain = \'$_POST[domain]\';\n
\n
\$email = \'$_POST[email]\'; \n
\n
\$nick =\'$_POST[nick]\\';\n
\n
?>";
$write = fopen("$dateiname", "w+");
fputs($write, $inhalt);
fclose ($write);
?> -
so hier ganz einfach
<?php
$dateiname = "config.php";
$inhalt = "
<?php\n
\$dbhost = \'$_POST[dbhost]\';\n
\$dbname = \'$_POST[dbname]\';\n
\$dbuser = \'$_POST[dbuser]\';\n
\$dbpasswd = \'$_POST[dbpasswd]\';\n
\$db_link = @mysql_connect($dbhost,$dbuser, $dbpasswd);\n
if (!\$db_link) {\n
echo \$error[0]; \n
die('Fehler beim Verbinden');\n
}\n
\n
\$db_select = @mysql_select_db(\$dbname);\n
if (!\$db_link) {\n
echo \$error[1];\n
die('Fehler beim DB-ausw?hlen');\n
}\n
\n
\$admin_name = '\$_POST[admin_name]\';\n
\$admin_password = '\$_POST[admin_password]\';\n
\$admin_cookie_code = '\$_POST[admin_cookie_code]\';\n
\n
\$url = '\$_POST[url]\';\n
\$bookmark_description = '\$_POST[bookmark_description]\';\n
\n
\$domain = '\$_POST[domain]\';\n
\n
\$email = '\$_POST[email]\'; \n
\n
\$nick ='\$_POST[nick]\\';\n
\n
?>";
$write = fopen("$dateiname", "w+");
fputs($write, $inhalt);
fclose ($write);
?>
-
Ja aber bei mir erstellt er die datei config.php und mir wird aus dem quelltext auch net so ganz klar wann er die erstellen soll.
EDIT: Sorry habe mich glaube flasch am anfang ausgedr?ckt. Er sollte auch die datei erstellen auf dem Server
Beitrag ge?ndert am 29.01 09:25 von ghostrider -
ok dann ganz einfach
<?php
$dateiname = "config.php";
in die variable $dateiname schreibst du den dateinamen rein
$inhalt = "
<?php\n
\$dbhost = \'$_POST[dbhost]\';\n
\$dbname = \'$_POST[dbname]\';\n
\$dbuser = \'$_POST[dbuser]\';\n
\$dbpasswd = \'$_POST[dbpasswd]\';\n
\$db_link = @mysql_connect($dbhost,$dbuser, $dbpasswd);\n
if (!\$db_link) {\n
echo \$error[0]; \n
die('Fehler beim Verbinden');\n
}\n
\n
\$db_select = @mysql_select_db(\$dbname);\n
if (!\$db_link) {\n
echo \$error[1];\n
die('Fehler beim DB-ausw?hlen');\n
}\n
\n
\$admin_name = '\$_POST[admin_name]\';\n
\$admin_password = '\$_POST[admin_password]\';\n
\$admin_cookie_code = '\$_POST[admin_cookie_code]\';\n
\n
\$url = '\$_POST[url]\';\n
\$bookmark_description = '\$_POST[bookmark_description]\';\n
\n
\$domain = '\$_POST[domain]\';\n
\n
\$email = '\$_POST[email]\'; \n
\n
\$nick ='\$_POST[nick]\\';\n
\n
?>";
in die variable $inhalt schreibst du den inhalt rein den du in die datei schreiben willst
$write = fopen("$dateiname", "w+");
erstellt die datei, falls sie noch nich existiert
fputs($write, $inhalt);
schreibt die daten rein
fclose ($write);
schlie?t die datei wieder
?>
-
Ok das funktioniert jetzt danke dir aber wenn er dann die config datei ertsllet hat und rein schreibt passiert folgendes:
<?php
$dbhost = \'richtig\';
$dbname = \'richtig\';
$dbuser = \'richtig\';
$dbpasswd = \'richtig\';
$db_link = @mysql_connect(Hier stehen auch die daten sollten aber eiegntlich nur die variablen stehen);
if (!$db_link) {
echo $error[0];
die('Fehler beim Verbinden');
}
$db_select = @mysql_select_db($dbname);
if (!$db_link) {
echo $error[1];
die('Fehler beim DB-ausw?hlen');
}
$admin_name = '$_POST[admin_name]\';
$admin_password = '$_POST[admin_password]\';
$admin_cookie_code = '$_POST[admin_cookie_code]\';
$url = '$_POST[url]\';
$bookmark_description = '$_POST[bookmark_description]\';
$domain = '$_POST[domain]\';
$email = '$_POST[email]\';
$nick ='$_POST[nick]\';
?>
da wo richtig steht sind die richtige daten -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage