Problema Php,duda

Iniciado por AWES0MN, 31 Julio 2010, 15:30 PM

0 Miembros y 1 Visitante están viendo este tema.

AWES0MN

Tengo un problema con un fopen,el caso es que quiero editar los archivos fácilmente,en éste caso es de configuración...

os dejo como se ve sin tocar nada,sin editarlo...

ANTES:
http://s3.subirimagenes.com:81/imagen/48895422ss.png

DESPUES:
http://s3.subirimagenes.com:81/imagen/488954323ss.png

CODIGO:

<?php
if (isset($_POST['arch'])) {
$nombre_archivo '../settings.php';
$final=$_POST['contenido'];

// Inserto los datos :P
    
if (!$gestor fopen($nombre_archivo'r+')) {
         echo 
"<span class='Estilo1'>No se puede abrir el archivo ($nombre_archivo)</span>";
         exit;
    }

    if (
fwrite($gestor$final) === FALSE) {
        echo 
"<span class='Estilo1'>No se puede escribir al archivo ($nombre_archivo)</span>";
        exit;
    }

    echo 
"Insertado";

    
fclose($gestor);
}
?>


form:

<form id="form1" method="post" action="">
  <label>Contenido:<br />
  <textarea name="contenido" rows="25"  cols="100"><?php 
readfile ('../settings.php'); 
?> </textarea>
  </label>
  <br />
  <input name="arch" type="hidden" id="arch" value="si" />
  <br />
  <label>
  <input type="submit" name="Submit" value="Guardar" />
  </label>
</form>

ERRORES:
*Que antes de editarlo,todo bien lo tengo a "R+" pero después,raramente donde dice "=" o algo así,dice "=\" \ vamos,muy raro.Esa es mi duda,repito: ESTÁ A R+. ;)

Gracias por sus ayudas.  ;D
"Hay 10 tipos de personas el mundo: aquellas que entienden los binarios y las que no" - Anónimo.

Gentoo GNU/Linux

Zazú

No entiendo cual es tu problema, ¿que es exactamente lo que necesitas?
En ves de "r+" pone "a" ;)

suerte  :silbar:

AWES0MN

Cita de: Zazú en 31 Julio 2010, 23:07 PM
No entiendo cual es tu problema, ¿que es exactamente lo que necesitas?
En ves de "r+" pone "a" ;)

suerte  :silbar:
No es por los r+ ni nada,lo tengo a r+,sí.

Pero el problema es que,lo edita bien el archivo pero al editarlo se generan unos =\ (en la imagen,verás qué digo,mira ambas)

Gracias  ;-)
"Hay 10 tipos de personas el mundo: aquellas que entienden los binarios y las que no" - Anónimo.

Gentoo GNU/Linux

~ Yoya ~

No es problema del source, al parecer tienes la directiva magic_quotes_gpc On del php.ini que escapa las comillas simples y dobles que se envían via GET/POST/COOKIE....

Tienes que desactivarla, luego reinicia apache y deberá funcionar...

yoya@yoya-desktop ~ $ cat /etc/php5/apache2/php.ini|grep magic_quotes_gpc
; magic_quotes_gpc
magic_quotes_gpc = Off
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

AWES0MN

Gracias ~ Yoya ~ ,me pareció muy raro.

Estoy en un compartido,lo reportaré,muchísimas gracias.  ;-)
"Hay 10 tipos de personas el mundo: aquellas que entienden los binarios y las que no" - Anónimo.

Gentoo GNU/Linux

~ Yoya ~

No es necesario reportarlo, puedes usar la función stripslashes()

Ejemplo:
Código (php) [Seleccionar]
<?php

$a 
'assas\"ssa\"asaas';
echo 
stripslashes($a);
?>



Salida:
assas"ssa"asaas
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

AWES0MN

wow,gracias ;)

Ni idea tenía de eso,algo que me apunto.  ;D
"Hay 10 tipos de personas el mundo: aquellas que entienden los binarios y las que no" - Anónimo.

Gentoo GNU/Linux

AWES0MN

Por cierto ya que lo tengo solucionado dejo el código... y gracias de nuevo...! va perfecto!  ;-)


<?php
if (isset($_POST['arch'])) {
$nombre_archivo 'AQUIELARCHIVO.PHP';
$final=$_POST['contenido'];

// Inserto los datos :P
    
if (!$gestor fopen($nombre_archivo'r+')) {
         echo 
"<span class='Estilo1'>No se puede abrir el archivo ($nombre_archivo)</span>";
         exit;
    }

    if (
fwrite($gestorstripslashes($final)) === FALSE) {
        echo 
"<span class='Estilo1'>No se puede escribir al archivo ($nombre_archivo)</span>";
        exit;
    }

    echo 
"Insertado";

    
fclose($gestor);
}
?>


<form id="form1" method="post" action="">
  <label>Contenido:<br />
  <textarea name="contenido" rows="25"  cols="100"><?php 
readfile ('../settings.php'); 
?> </textarea>
  </label>
  <br />
  <input name="arch" type="hidden" id="arch" value="si" />
  <br />
  <label>
  <input type="submit" name="Submit" value="Guardar" />
  </label>
</form>
"Hay 10 tipos de personas el mundo: aquellas que entienden los binarios y las que no" - Anónimo.

Gentoo GNU/Linux

Zazú

Si hubiera sabido lo que necesitabas ya te lo decia :P

Cualquier otra cosa postea o mandame un mensaje privado que intento ayudarte, suerte  ;)