Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wstawienie zmiennej w pole i zapisanie treści do pliku.
Forum PHP.pl > Forum > Przedszkole
Gruchol
Witam,

Mam taki kod :

  1. <?php
  2. $dbname = $_POST["dbname"];
  3. $dbuser = $_POST["dbuser"];
  4. $dbpass = $_POST["dbpass"];
  5. $plik = fopen('$dbname','a');
  6. $zawartosc = '<?php $db = mysqli_connect('localhost', '$dbuser', '$dbpass', '$dbname'); ?>';
  7. fwrite($plik, $zawartosc);
  8.  
  9. ?>


Chodzi mi o to, że muszę zapisywać do plików te dane które są w zmiennych.
Jednak gdy zrobię to tak jak jest to wstawia mi się to :
  1. <?php $db = mysqli_connect('localhost', '$dbuser', '$dbpass', '$dbname'); ?>

A chcę aby się wstawiło w to miejsce to co jest w zmiennych czyli aby do pliku zapisało mi się np.
<?php $db = mysqli_connect('localhost', 'root', 'password', 'nazwabazy'); ?>

Jak to mogę jeszcze zrobić ?
Z góry dziękuję i pozdrawiam.
Pyton_000
zmień < -> &lt; i okalające ' na "
Gruchol
A jak to powinno wyglądać ?
Bo zrobiłem to tak :

  1. $zawartosc = "&lt;?php $db = mysqli_connect('localhost', '$dbuser', '$dbpass', '$dbname'); ?&lt;";

I nie do końca działa.
Pyton_000
Kurde tak trudno powiedzieć i pokazać co nie działa?
Czy wszyscy myślą że jak powiedzą "nie działa" to raptem wszyscy rzucą się żeby brać kody, testować u siebie i sprawdzać co nie działa?
Gruchol
To co zapisało się do pliku wygląda tak : &lt;?php = mysqli_connect('localhost', 'test2', 'test3', 'tesT'); ?&lt;
Przepraszam ale zapomniałem tego wstawić.
Pyton_000
No to zamień z powrotem na < i >
Gruchol
Ok działało, tylko że okazało się, że muszę zmienić tamto połączenie na takie :

  1. $zawartosc = "<?php
  2. function dbc()
  3. {
  4. mysql_connect("localhost", "$dbuser", "$dbpass") or die(mysql_error());
  5. mysql_select_db("$dbname") or die(mysql_error());
  6. }
  7. ?>";


?>
Jednak teraz wyświetla się : Parse error: syntax error, unexpected 'localhost' (T_STRING) in /usr/share/nginx/www/files/test.php on line 9
Gdzie jest błąd ?
Można zrobić tak aby ten cały kod się nie interpretował tylko jego część gdzie jest zmienna ?
Pyton_000
Porównaj sobie z poprzednim o znajdź róznicę.
Gruchol
Tam zamiast " były '.
Jednak tutaj muszą być te ".
Próbowałem dodać przed liniami // aby nie interpretowało tego kodu jednak nic z tego.
Jak np. bym chciał tam wsadzić kod php który ma np. 1000 lini to jak zrobić aby się nie zinterpretował ?
Ponieważ muszę generować też inne pliki .php w których będą się zmieniały niektóre rzeczy.
Pyton_000
  1. <?php
  2. $dbuser = '11';
  3. $dbpass = '22';
  4. $dbname = '33';
  5.  
  6. $zmienna = <<<TAG
  7. <?php
  8. function dbc()
  9. {
  10. mysql_connect("localhost", "$dbuser", "$dbpass") or die(mysql_error());
  11. mysql_select_db("$dbname") or die(mysql_error());
  12. }
  13. ?>
  14. TAG;
  15.  
  16. file_put_contents('test.txt', $zmienna);
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.