Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/11/2007, 10:07
Avatar de Spydis
Spydis
 
Fecha de Ingreso: mayo-2003
Ubicación: Donosti
Mensajes: 90
Antigüedad: 21 años
Puntos: 1
Pregunta formulario para actualizar BD

Hola! La idea que tenía era la de poder modificar desde la web datos como noticias o reseñas sin necesidad de cambiar datos "a mano" en la BD.
La idea es que ciertas personas que hayan iniciado sesión antes puedan acceder a un formulario en el que les aparezca la información de la BD para poder ser actualizada. En vez de mandar los datos a otro archivo me gustaría hacerlo todo en el mismo, por lo que el formulario se encuentra en review.php?uid=$id&edit y el código para actualizar en review.php?uid=$id&edit2
El código siguiente cumple perfectamente esa función y la idea era que despues de darle a ACTUALIZAR te volviese a llevar al formulario. El único problema es que al darle a ACTUALIZAR te lleva al formulario pero no te muestra los elementos actualizados. Hay que darle a F5 para actualizar y ver lo que ha cambiado:
Código PHP:
if ((isset($_GET['edit']) || isset($_GET['edit2'])) && isset($_SESSION['valid_user']))
{
    
    
    
        if (isset(
$_GET['edit2']))
        {
            
$edit_titulo2 $_POST['titulo2'];
            
$edit_titulo $_POST['titulo']; 
            
$edit_titulo_original $_POST['titulo_original'];     
            
$edit_tipo $_POST['tipo'];    
            
$edit_genero $_POST['genero'];         
            
$edit_company $_POST['company'];     
            
$edit_autor $_POST['autor'];         
            
$edit_duracion $_POST['duracion'];             
            
$edit_estructura $_POST['estructura'];             
            
$edit_puntu $_POST['puntu']; 
            
$edit_texto $_POST['texto'];         
            
$edit_pros $_POST['pros'];    
            
$edit_contras $_POST['contras'];         
            
$edit_video $_POST['video'];
            
            
$insertar "UPDATE reviews SET titulo2 = '$edit_titulo2', titulo = '$edit_titulo',    titulo_original = '$edit_titulo_original', 
            tipo = '$edit_tipo', genero = '$edit_genero', company = '$edit_company', autor = '$edit_autor',
            duracion = '$edit_duracion', estructura = '$edit_estructura', puntu = '$edit_puntu', texto = '$edit_texto',        
            pros = '$edit_pros', contras = '$edit_contras', video = '$edit_video' WHERE id = $id"
;
            
            
$resultado $mysqli->query($insertar);
        }

        
// edición por formulario
            
echo '<form method="post" action="review.php?uid='.$id.'&edit2">';
            echo 
'<table>';
            echo 
'<tr><td>Titulo corto:</td>';
            echo 
'<td><textarea name="titulo2" cols="45" rows="2">'.$titulo2.'</textarea></td></tr>';
            echo 
'<tr><td>Titulo largo:</td>';
            echo 
'<td><textarea name="titulo" cols="45" rows="2">'.$titulo.'</textarea></td></tr>';
            echo 
'<tr><td>Titulo original:</td>';
            echo 
'<td><textarea name="titulo_original" cols="45" rows="2">'.$titulo_original.'</textarea></td></tr>';
            echo 
'<tr><td>Tipo:</td>';
            echo 
'<td><input type="text" name="tipo" value="'.$tipo.'"></td></tr>';
            echo 
'<tr><td>Género:</td>';
            echo 
'<td><textarea name="genero" cols="45" rows="2">'.$genero.'</textarea></td></tr>';
            echo 
'<tr><td>Compañía:</td>';
            echo 
'<td><textarea name="company" cols="45" rows="2">'.$company.'</textarea></td></tr>';
            echo 
'<tr><td>Autor:</td>';
            echo 
'<td><textarea name="autor" cols="45" rows="2">'.$autor.'</textarea></td></tr>';
            echo 
'<tr><td>Duración:</td>';
            echo 
'<td><textarea name="duracion" cols="45" rows="2">'.$duracion.'</textarea></td></tr>';
            echo 
'<tr><td>Estructura:</td>';
            echo 
'<td><input type="text" name="estructura" value="'.$estructura.'"></td></tr>';
            echo 
'<tr><td>Puntuación:</td>';
            echo 
'<td><input type="text" name="puntu" value="'.$puntu.'"></td></tr>';
            echo 
'<tr><td>Texto:</td>';
            echo 
'<td><textarea name="texto" cols="45" rows="5">'.$texto.'</textarea></td></tr>';
            echo 
'<tr><td>Pros:</td>';
            echo 
'<td><textarea name="pros" cols="45" rows="5">'.$pros.'</textarea></td></tr>';
            echo 
'<tr><td>Contras:</td>';
            echo 
'<td><textarea name="contras" cols="45" rows="5">'.$contras.'</textarea></td></tr>';
            echo 
'<tr><td>Video (1 sí - 0 no):</td>';
            echo 
'<td><input type="text" name="video" value="'.$video.'"></td></tr>';
            
            echo 
'<tr><td colspan="2" align="center">';
            echo 
'<input type="submit" value="Actualizar"></td></tr>';
            echo 
'</table></form>';
        
}
else
{
echo 
'LO QUE SEA....';

Alguna idea de como hacer para que me muestre los datos cambiados cuando vuelve al formulario?