Foros del Web » Programando para Internet » PHP »

No modifica todo y elimina contenido

Estas en el tema de No modifica todo y elimina contenido en el foro de PHP en Foros del Web. Tengo el siguiente problema con un trabajo de la universidad, de hecho no se si es no php o es problema en mysql, ya que ...
  #1 (permalink)  
Antiguo 07/08/2010, 01:42
Avatar de MarioAlejandroCR2  
Fecha de Ingreso: mayo-2010
Ubicación: Esparza - Puntarenas
Mensajes: 98
Antigüedad: 13 años, 11 meses
Puntos: 2
Pregunta No modifica todo y elimina contenido

Tengo el siguiente problema con un trabajo de la universidad, de hecho no se si es no php o es problema en mysql, ya que todo los cambios son en un sitio .php pero las consultas se hacen en un procedimiento almacenado en mysql:
Cita:
Cuento con los campos:
idnoticia
titulo
contenido
autor
tag(categoría)
fecha y hora
La consulta modifica todos los cambios excepto titulo y contenido, por razones lógicas idnoticia, no lo hace, y sea como sea al modificar los campos que si se pueden eliminan todo el contenido de la noticia. no puedo modificar titulo y contenido, sin embargo al "realizar el cambio" me menda un mensaje que si se pudo.

Acá el procedimiento almacenado y el código php más el formulario:

Código MySQL:
Ver original
  1. [CODE]DELIMITER //
  2.  
  3. CREATE DEFINER=`root`@`localhost` PROCEDURE `modNoticia`(in ntitulo varchar(75),
  4.                             in ncontenido TEXT,
  5.                             in nautor varchar (50),
  6.                             in nfecha DATE,
  7.                             in nhora TIME,
  8.                             in ntag varchar(15))
  9.  
  10. update noticia set  titulo=ntitulo,
  11.                     contenido=ncontenido,
  12.                     autor=nautor,
  13.                     fecha=nfecha,
  14.                     hora=nhora,
  15.                     tag=ntag
  16. where titulo=ntitulo;  
  17. end//[/CODE]

Este llama al método de modificar
Código PHP:
Ver original
  1. [PHP]<?php
  2. [COLOR="Navy"]$Formulario = $_SERVER['PHP_SELF'];
  3. if ((isset($_POST["OC_insertar"])) && ($_POST["OC_insertar"] == "formitamod")) {
  4. $insertSQL = sprintf("call modNoticia('".$_POST["titulo"]."','".$_POST["contenido"]."','".$_POST["autor"]."','".$_POST["fecha"]."','".$_POST["hora"]."','".$_POST["tag"]."')");
  5.  
  6. mysql_select_db($Basedatos, $MiConexion);
  7. $Result1 = mysql_query($insertSQL, $MiConexion) or die(mysql_error());
  8.  
  9. $insertIrA = "./exitomodnoticia.php?noti=".$_POST['titulo'];
  10. header(sprintf("Location: %s", $insertIrA));
  11.  
  12. echo $_POST['membre'];
  13. };// fin del if [/COLOR]
  14. ?>[/PHP]

Este recorre y muestra un select con todas las noticias al presionarlo carga el formulario con todo el contenido de la noticia seleccionada
Código PHP:
Ver original
  1. [PHP]<?php
  2. [COLOR="Green"]session_start();
  3. require_once('conexion.php');
  4.  
  5. //cAPTURA VALOR ENVIADO COMO PARAMETRO
  6. //Consulta los row_regis del usuario para la interfase
  7. mysql_select_db($Basedatos, $MiConexion);
  8. $AuxSql = "SELECT * FROM noticia order by idnoticia desc";
  9. $regis = mysql_query($AuxSql, $MiConexion) or die(mysql_error());
  10. $Accion_Formulario = $_SERVER['PHP_SELF'];
  11. if ((isset($_POST["OC_insertar"])) && ($_POST["OC_insertar"] == "formita")) {
  12. $SQL = sprintf("select * from noticia where titulo='".$_POST['lsttitulo']."' order by idnoticia desc");
  13. mysql_select_db($Basedatos, $MiConexion);
  14. $regis2 = mysql_query($SQL, $MiConexion) or die(mysql_error());
  15. $row_regis2= mysql_fetch_assoc($regis2);
  16. }// fin del if[/COLOR]
  17. ?>[/PHP]

Y este es el formulario:
Código PHP:
[COLOR="Purple"]<h1>Modificar noticia</h1>
          Seleccione la noticia que desea modificar
 <form method="post" name="formita" onsubmit='return checkdata(this)' action="<?php echo $Accion_Formulario?>" >
              <select name="lsttitulo">
<?php
while($row_regis mysql_fetch_assoc($regis)){
echo 
"<option value='".$row_regis["titulo"]."'>".$row_regis["titulo"]."</option>";
}
?>
            </select></td>
        </tr>
        <tr>
          <td><input name="enviar" type="submit" value="Mostrar" class="white"/>
            <p></p></td>
        </tr>
        <tr>
          <td><hr /></td></tr>
        <input type="hidden" name="OC_insertar" value="formita">
      </form>
      
      <?php
      
echo "<form method='post' name='formita' onsubmit='return checkdata(this)'>";
          echo 
"<div>ID Noticia:</div>";
          echo 
"<div><input name='idnoticia' value='".$row_regis2['idnoticia']."' type='text' size='80' maxlength='9' /></div>
          <div>Título:</div>
          <div><input name='titulo' value='"
.$row_regis2['titulo']."' type='text' size='80' maxlength='9' /></div>
          <div>Contenido:</div>
          <div><textarea name='"
.$row_regis2['contenido']."' type='text' style='width:500px; height:500px;'>".$row_regis2['contenido']."</textarea></div>
          <div>Autor:</div>
          <div><input name='autor' value='"
.$row_regis2['autor']."' type='text' size='80' maxlength='9' /></div>
          <div>Fecha:</div>
          <div><input name='fecha' value='"
.$row_regis2['fecha']."' type='text' size='80' maxlength='10' /></div>
          <div>Hora:</div>
          <div><input name='hora' value='"
.$row_regis2['hora']."' type='text' size='80' maxlength='9' /></div>
          <div>Categoría:</div>
          <div><input name='tag' value='"
.$row_regis2['tag']."' type='text' size='80' maxlength='9' /></div>
          <br />"
;
               
 echo 
"<div><input name='enviar' type='submit' value='Modificar noticia' class='white'/></div>
        <input type='hidden' name='OC_insertar' value='formitamod'>
      </form>"
;[/COLOR]
?>
De antemano gracias, y creo que el problema esta en el procedimiento almacenado
  #2 (permalink)  
Antiguo 07/08/2010, 10:35
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No modifica todo y elimina contenido

Cita:
Iniciado por MarioAlejandroCR2 Ver Mensaje
[...] De antemano gracias, y creo que el problema esta en el procedimiento almacenado
pero, pues claro!!!

¿entonces que hace tu pregunta en este foro de programación PHP?

el lugar correcto para que te orienten en tu problema debería ser el foro de SQL, base de datos, etc...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 07/08/2010, 10:53
Avatar de MarioAlejandroCR2  
Fecha de Ingreso: mayo-2010
Ubicación: Esparza - Puntarenas
Mensajes: 98
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: No modifica todo y elimina contenido

Yo se, me suena más hay pero no estoy seguro si es también de php
  #4 (permalink)  
Antiguo 07/08/2010, 11:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No modifica todo y elimina contenido

Cita:
Iniciado por MarioAlejandroCR2 Ver Mensaje
Yo se, me suena más hay pero no estoy seguro si es también de php
no creo que sea culpa de PHP, osea... pues PHP lo único que hace es ejecutar la consulta:
Código PHP:
mysql_query($sql_consulta_correcta); 
el problema radica en que tu consulta esta mal... mas no la forma en que la ejecutas con PHP....

entonces, la clave es esa... primer resuelve tu consulta, que funcione... ya luego la ejecutas como cualquier otra con PHP...

y pues.... por eso te pido que reflexiones, ¿cual es el problema de programación PHP?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: contenido, todo
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:16.