Foros del Web » Programando para Internet » PHP »

Problema con fwrite()

Estas en el tema de Problema con fwrite() en el foro de PHP en Foros del Web. Hola! Tengo un problema con fwrite() Estoy en el desarrollo del script del clon de Tu Secreto y tengo problemas con el instalador. El tema ...
  #1 (permalink)  
Antiguo 25/08/2010, 14:54
 
Fecha de Ingreso: enero-2009
Mensajes: 34
Antigüedad: 15 años, 3 meses
Puntos: 1
Información Problema con fwrite()

Hola! Tengo un problema con fwrite()

Estoy en el desarrollo del script del clon de Tu Secreto y tengo problemas con el instalador. El tema viene de este código:
Código PHP:
Ver original
  1. <?php
  2.  
  3. if(isset($_POST['enviado'])){
  4. $file = fopen('datos.php','w');
  5. $create = fwrite($file,"
  6. <?php
  7. $contrasena = '".$_POST['password']."'; //Contraseña para acceder a la administracion.
  8. $nombre = '".$_POST['nombre']."'; //Nombre de tu web.
  9. $slogan = '".$_POST['slogan']."';
  10. $twitter = '".$_POST['twitter']."'; //Nombre del twitter de tu pagina.
  11. $facebook = '".$_POST['facebook']."'; //ID de tu pagina en facebook
  12. $xat = '".$_POST['xat']."'; //ID de tu chat Xat
  13. $scripturl = '".$_POST['url']."'; //URL de tu script sin / al final
  14. $auto_activacion = ".$_POST['auto']."; //ingresar 1 para que los secretos se muestren sin tu moderacion, ingresar 0 si prefieres moderarlos.
  15. $sqlnombre = '".$_POST['mysql_user']."'; //El nombre de usuario de tu base de datos.
  16. $sqlcontra = '".$_POST['mysql_password']."'; //La contraseña de tu base de datos.
  17. $sqlserver = '".$_POST['mysql_server']."'; //Tu Host sql por lo general es localhost.
  18. $sqldb = '".$_POST['mysql_db']."'; //Nombre de la base de datos.
  19. $version = 'v3.0';
  20. $Mostrar = ".$_POST['num_sec']."; //Secretos a mostrar
  21. $copy = 'TopSecret '.$version.' &copy; '.date('Y').' &nbsp;-&nbsp; By <a href=\"http://ranasofia.com\" title=\"Ranasofia\">Ranasofia</a>';
  22. $conexion = mysql_connect($sqlserver, $sqlnombre, $sqlcontra) OR die(\"error en la base de datos.-\");
  23. mysql_select_db($sqldb, $conexion) OR die(\"error en la base de datos.-\");
  24. ?>
  25. ");
  26.  
  27. if($create){
  28. echo 'El script se instal&oacute; correctamente, acced&eacute; a tu nueva web desde <a href="'.$_POST['url'].'">aqu&iacute;</a>';
  29. //unset();
  30. }
  31. }
  32. ?>
  33. <!DOCTYPE html>
  34. <html>
  35. <head>
  36. <title>Instalador Script TuSecreto v3</title>
  37. </head>
  38. <body>
  39. <form action="instalador.php" method="POST">
  40. <b>Nombre de la web:</b> <input type="text" name="nombre" maxlength="15" /><br />
  41. <b>Slogan:</b> <input type="text" name="slogan" maxlength="30" /><br />
  42. <b>Contrase&ntilde;a (para acceder a la administraci&oacute;n):</b> <input type="password" name="password" /><br />
  43. <b>Twitter:</b> <input type="text" name="twitter" maxlength="20" /><br />
  44. <b>Facebook:</b> <input type="text" name="facebook" maxlength="30" /><br />
  45. <b>Xat:</b> <input type="text" name="xat" maxlength="30" /><br />
  46. <b>URL de tu p&aacute;gina (sin / al final):</b> <input type="text" name="url" maxlength="" /><br />
  47. <b>Auto-activar secretos?:</b> <input type="radio" name="auto" value="1" checked /> SI <input type="radio" name="auto" value="0" /> NO<br />
  48. <b>Nombre del usuario MySQL:</b> <input type="text" name="mysql_user" maxlength="" /><br />
  49. <b>Servidor MySQL (usualmente <i>localhost</i>):</b> <input type="text" name="mysql_server" maxlength="" /><br />
  50. <b>Contraseña del servidor MySQL:</b> <input type="password" name="mysql_password" maxlength="" /><br />
  51. <b>Nombre de la base de datos MySQL:</b> <input type="text" name="mysql_db" maxlength="" /><br />
  52. <b>N&uacute;mero de secretos a mostrar:</b> <input type="number" name="num_sec" maxlength="" /><br />
  53. <b>Quer&eacute;s que el script revele los secretos del universo?:</b> <input type="radio" name="easter_egg" value="1" checked /> SI <input type="radio" name="easter_egg" value="0" /> NO<br />
  54. <input type="submit" name="enviado" id="enviado" />
  55. </form>
  56. </body>
  57. </html>

Dejate de todo tengo un form con todos los datos de instalación, y cuando los completo y envío, la función me escribe los datos que ingresé, pero me borra el nombre de las variables, de forma que el archivo datos.php queda de la siguiente manera:
Código PHP:
Ver original
  1. <?php
  2.  = 'elrana'; //Contraseña para acceder a la administracion.
  3.  = 'gsgsdg'; //Nombre de tu web.
  4.  = 'crazyfrog';
  5.  = 'gdsgds'; //Nombre del twitter de tu pagina.
  6.  = 'gdsgds'; //ID de tu pagina en facebook
  7.  = 'gdsgsd'; //ID de tu chat Xat
  8.  = 'gsdgsdg'; //URL de tu script sin / al final
  9.  = 1; //ingresar 1 para que los secretos se muestren sin tu moderacion, ingresar 0 si prefieres moderarlos.
  10.  = 'gsdgsdg'; //El nombre de usuario de tu base de datos.
  11.  = ''; //La contraseña de tu base de datos.
  12.  = 'gsdgs'; //Tu Host sql por lo general es localhost.
  13.  = 'gsdgsdg'; //Nombre de la base de datos.
  14.  = 'v3.0';
  15.  = sdgdgs; //Secretos a mostrar
  16.  = 'TopSecret '..' &copy; '.date('Y').' &nbsp;-&nbsp; By <a href="http://ranasofia.com" title="Ranasofia">Ranasofia</a>';
  17.  = mysql_connect(, , ) OR die("error en la base de datos.-");
  18. mysql_select_db(, ) OR die("error en la base de datos.-");
  19. ?>

Entonces pregunto si hay alguna forma que se escriba el nombre de las variables, o si hay otra forma de poder hacer esta especie de "instalador" de 2 pesos.

Gracias!
  #2 (permalink)  
Antiguo 25/08/2010, 18:12
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Problema con fwrite()

usa comillas simples para evitar que el analizador de cadenas de php trate de buscar las variables:

Código PHP:
Ver original
  1. $create = fwrite($file,'
  2. <?php
  3. $contrasena = \''.$_POST['password'].'\'; //Contraseña para acceder a la administracion.
  4. $nombre = \''.$_POST['nombre'].'\'; //Nombre de tu web.';//sigue con el resto ;-)
  #3 (permalink)  
Antiguo 27/08/2010, 16:08
 
Fecha de Ingreso: enero-2009
Mensajes: 34
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Problema con fwrite()

Muchas gracias maycolalvarez! Funcionó perfectamente!

Tema solucionado

Pueden cerrar.

Etiquetas: fwrite, instalador
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:12.