Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nowy plik i zapis do niego
Forum PHP.pl > Forum > PHP
MnicH.
Witam!! To znowoz ja!! heh
mam problem chce zrobic strone w ktorej jest formularz i on ma mi utworzyc nowy plik z rozszezeniem .php
i do niego zapisac dane w formie php. No i w tym problem nie wiem jak to zrobic. Wzorowalem sie z accmakera do ots. zmienialem kod:
  1. <?php
  2. include 'checkunique.php';
  3. require '../config.php';
  4. echo "<title>$site</title>";
  5. echo '<link rel="stylesheet" href="style/style.css" type="text/css">';
  6.  
  7. $delay = "0";
  8. $url = "index.php";
  9.  
  10. include 'redir.php';
  11. include 'logout.inc';
  12.  
  13. $_SESSION['page'] = 'addchar.php';
  14. echo "<title>$site by Isecross, Otfans.pl</title>";
  15. function skills($vocation)
  16. {
  17. require '../config.php';
  18. $str = "";
  19.  
  20. for ($id = 0; $id <= 6; $id++)
  21. $str .= ('<skill skillid="' . $id . '" level="' . $skill[$vocation][$id] . '" tries="0"/>' . "n");
  22.  
  23. return $str;
  24. }
  25.  
  26. function equip($vocation)
  27. {
  28. require'../config.php';
  29. $str = "";
  30.  
  31. for ($id = 1; $id <= 10; $id++)
  32. {
  33. if ($equip[$vocation][$id-1] != 0)
  34. {
  35. $str .= ('<slot slotid="' . $id . '"><item id="' . $equip[$vocation][$id-1] . '"');
  36. if ($id == 3) // backpack
  37. $str .= ('><inside>' . $bp[$vocation] . '</inside></item>');
  38. else
  39. $str .= ('/>');
  40. $str .= ('</slot>' . "n");
  41. }
  42. }
  43.  
  44. return $str;
  45. }
  46.  
  47. function newacc()
  48. {
  49. require('../config.php'); // This is the config with paths
  50. $nick = $_POST['nick'];
  51. $charname = $nick;
  52. $sex = $_POST['sex'];
  53. $vocation = $_POST['vocation'];
  54. $account = $_SESSION['user'];
  55. $cookiename = md5($ip_serwera);
  56. $cookievalue = $cookiename;
  57. $city = $_POST['city'];
  58.  
  59. ($sex == 0 || $sex == 1) or die ('Invalid sex!');
  60. ($vocation >= 1 && $vocation <= 4) or die ('Invalid vocation!');
  61.  
  62. if($sizeacc == "7"){
  63. ($account >= 1000000 && $account <= 9999999) or die ('Niepoprawny account number!'); // Six numbers
  64. }
  65. else if($sizeacc == "6"){
  66. ($account >= 100000 && $account <= 999999) or die ('Niepoprawny account number!'); // Five numbers
  67. }
  68. else{
  69. ($account >= 100000 && $account <= 999999) or die ('Niepoprawny account number!'); // If not found then Five numbers.
  70. }
  71. // ($account >= 100000 && $account <= 999999) or die ('Niepoprawny account number!'); // This is the old shit
  72.  
  73. preg_match("/^[a-zA-Z][a-zA-Z ]*$/", $nick) or die ('Nick zawiera niedozwolone znaki!');
  74. !preg_match("/^gm/i", $nick) or die ('Nie jeste&para; GM!');
  75. !preg_match("/^god/i", $nick) or die ('Nie jeste&para; GOD!');
  76. ($_COOKIE[$cookiename] != $cookievalue) or die ('Nie możesz założyć już dzisiaj postaci. Spróbuj jutro.');
  77. is_numeric($city) or die ('Nie wybrałe&para; miasta!');
  78.  
  79. $diraccount = $folderacc;
  80. $dirplayer = $folderplayer;
  81.  
  82. $account_file = "$diraccount/$account.xml";
  83. $player_file = "$dirplayer/$nick.xml";
  84.  
  85.  
  86. $myfile = ''.$folderacc.''.$account.'.xml';
  87.  
  88. //account file
  89. $fh = fopen($myfile, 'r');
  90. $data = fread($fh, filesize($myfile));
  91. $data = trim($data);
  92. fclose($fh);
  93. $tmpsrch = strpos($data, '</characters>');
  94. $data = trim($data);
  95. $leftbit = substr($data, 0, $tmpsrch);
  96. $rightbit = substr($data, $tmpsrch);
  97.  
  98. $charfile = ''.$folderplayer.'' . $nick . '.xml';
  99. if (file_exists($charfile)){
  100. $_SESSION['msg'] = 'Postać o takim nicku już istnieje.';
  101. echo $_SESSION['msg'];
  102. exit();
  103. }
  104. else
  105. {
  106. //$accno, $charname, $voc, $sex
  107. $filedata = $leftbit . '<character name="' . $charname . '" />
  108. ' . $rightbit;
  109. $accno = $_SESSION['user'];
  110. $fg = fopen($myfile, 'w');
  111. fwrite($fg, $filedata);
  112. fclose($fg);
  113.  
  114. $file = fopen($player_file, 'w');
  115. fwrite($file,
  116. '<?xml version="1.0"?>
  117. <player name="' . $nick . '" account="' . $account . '" sex="' . $sex . '" lookdir="1" exp="' . $exp . '" voc="' . $vocation . '" level="' . $lvl . '" access="0" cap="' . $cap . '" maglevel="' . $mlvl[$vocation] . '" lastlogin="0" promoted="0" banned="0">
  118. <spawn x="' . $sx[$city] . '" y="' . $sy[$city] . '" z="' . $sz[$city] . '"/>
  119. <temple x="' . $tx[$city] . '" y="' . $ty[$city] . '" z="' . $tz[$city] . '"/>
  120. <health now="' . $health[$vocation] . '" max="' . $health[$vocation] . '" food="0"/>
  121. <mana now="' . $mana[$vocation] . '" max="' . $mana[$vocation] . '" spent="0"/>
  122. <look type="' . $look[$vocation][$sex] . '" head="0" body="127" legs="0" feet="114"/>
  123. <skills>' . "n" . skills($vocation) . '</skills>
  124. <inventory>' . equip($vocation) . '</inventory>
  125. <depots><depot depotid="1"><item id="2590"><inside><item id="2594"/></inside></item></depot></depots>
  126. <storage/>
  127. </player>');
  128. fclose($file);
  129. $h = '3600';
  130. $t = time();
  131. $time = $t + $h * $new_acc_time;
  132. setcookie($cookiename,$cookievalue,$time); 
  133. print "<b>Postac $nick założona pomy&para;lnie!</b>";
  134. include 'success.php';
  135. }
  136. }
  137.  
  138. newacc();
  139. ?>
  140. </center>
no i nic prosze o pomoc.<PLS>
Z góry THX
maryaan
po co Ci caly ten smietnik? do tego co napisales wystarczy formularz zlozony z textarea i przycisku oraz funkcja zapisujaca przeslana z forumularza tresc do pliku.
MnicH.
zle mie zrozumiales formularz mam, potrzebne mi wlasnie to co dalem ale nie az tak rozbudowane.
tylko zeby zapisalo jako nowy plik i dane do niego.
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.