Ver Mensaje Individual
  #8 (permalink)  
Antiguo 11/11/2012, 18:05
shyvano
 
Fecha de Ingreso: julio-2012
Ubicación: Santiago
Mensajes: 45
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema actualizar MYSQL

Mira te coloco todo el actualizador, lo que hace es cargar los datos de la base de datos, los cambias y le das actualizar, es basicamente eso

Código PHP:
<?php
                        
/** conexion ***************************/
                        // conectamos a la base de datos
                        
$link mysql_connect('localhost''''');
                        if(!
$link) {
                        die(
"Error al intentar conectar: ".mysql_error());
                        }
                        
// seleccionamos la base de datos
                        
$db_link mysql_select_db(''$link);
                        if(!
$db_link) {
                        die(
"Error al intentar seleccionar la base de datos"mysql_error());
                        }
                        
/** fin conexion ************************/
                        // recogemos el ID
                        // del registro a actualizar
                        
if(isset($_GET['id'])){
                        
$id $_GET['id'];
                        
// hacemos una consulta
                        // para mostrar los datos
                        
$sql mysql_query("SET NAMES 'utf8'");
                        
$sql mysql_query("SELECT * FROM usuarios
                        WHERE id = $id"
$link)
                        or die(
mysql_error());
                        
$row mysql_fetch_array($sql);
                        
// advertimos
                        
$mensaje "Actualizar datos de <b>$row[email]</b>";
                        }
                        
// comprobamos si
                        // ha sido enviado el formulario
                        
if(isset($_POST['actualizar']) && $_POST['actualizar'] == 'Actualizar'){
                        
// comprobamos que no lleguen campos vacios, aqui van solo los campos que deben ir llenos
                        
if(!empty($_POST['email']) && !empty($_POST['nombres']) && !empty($_POST['apellido_pat']) && !empty($_POST['apellido_mat']) && !empty($_POST['f_nacimiento']) && !empty($_POST['estado_civil']) && !empty($_POST['nacionalidad']) && !empty($_POST['profesion']) && !empty($_POST['residencia']) && !empty($_POST['telefono'])){
                        
// creamos las variables
                        // que vamos a usar en la consulta UPDATE
                        // y le asignamos sus valores
                        
$id $_POST['id'];
                        
$email $_POST['email'];
                        
$nombres $_POST['nombres'];
                        
$apellido_pat $_POST['apellido_pat'];
                        
$apellido_mat $_POST['apellido_mat'];
                        
$f_nacimiento $_POST['f_nacimiento'];
                        
$estado_civil $_POST['estado_civil'];
                        
$nacionalidad $_POST['nacionalidad'];
                        
$profesion $_POST['profesion'];
                        
$residencia$_POST['residencia'];
                        
$telefono $_POST['telefono'];
            
$biografia $_POST['biografia'];
            
$facebook $_POST['facebook'];
            
$twitter $_POST['twitter'];
            
$youtube $_POST['youtube'];
            
$wordpress $_POST['wordpress'];
            
$myspace $_POST['myspace'];
            
$yahoo $_POST['yahoo'];
            
$google $_POST['google'];
            
                        
// la consulta UPDATE
                        // La ultima de los sqlupdate va sin ,
                        
$sqlUpdate mysql_query("UPDATE usuarios
                        SET email = '$email',
                        nombres = '$nombres',
                        apellido_pat = '$apellido_pat',
                        apellido_mat = '$apellido_mat',
                        f_nacimiento = '$f_nacimiento',
                        estado_civil = '$estado_civil',
                        nacionalidad = '$nacionalidad',
                        profesion = '$profesion',
                        residencia = '$residencia',
                        telefono = '$telefono',
            biografia = '$biografia',
            facebook = '$facebook',
            twitter = '$twitter',
            youtube = '$youtube',
            wordpress = '$wordpress',
            myspace = '$myspace',
            yahoo = '$yahoo',
            google = '$google'
                        WHERE id = '$id'"
$link)
                        or die(
mysql_error());
                        echo 
"<p>Registro actualizado correctamente<p>";
                        }else{
                        echo 
"<p>Debe llenar todos los campos <p><a href='javascript:history.back();'>Reintentar</a>";
                        }
                        }else{
                        
// mostramos el mensaje
                        //echo "<p>".$mensaje."</p>";
                    
?>
                </section>
        
                <section id="cont_sup_izq" class="contenedor">
                </section>
            <form class="actua-datos" name="actualizar-datos" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">    
                <section id="cont_sup_der" class="contenedor">
                    <h2>Un poco sobre ti</h2>
            <div>
                        <textarea rows="10" cols="50" type="text" name="biografia"/><?php echo $row['biografia']; ?></textarea>
            </div>
        </section>
                    
   
        <section id="cont_med_izq" class="contenedor">
                    <h2>Datos Personales</h2>
                    <h5>Los campos con <span>*</span> son obligatorios</h5>
                    <div>
                        <label>* E-mail:</label> <input type="text" name="email" value="<?php echo $row['email']; ?>" />
                    </div>
                    <div>
                        <label>* Nombres:</label> <input type="text" name="nombres" value="<?php echo $row['nombres']; ?>" />
                    </div>
                    <div>
                        <label>* Apellido Paterno:</label> <input type="text" name="apellido_pat" value="<?php echo $row['apellido_pat']; ?>" />
                    </div>
                    <div>
                        <label>* Apellido Materno:</label> <input type="text" name="apellido_mat" value="<?php echo $row['apellido_mat']; ?>" />
                    </div>
                    <div>
                        <label>* Fecha Nacimiento:</label> <input type="text" name="f_nacimiento" placeholder="Ej: 1982-02-29" value="<?php echo $row['f_nacimiento']; ?>" />
                    </div>
                    <div>
                        <label>* Estado Civil:</label> <input type="text" name="estado_civil" value="<?php echo $row['estado_civil']; ?>" />
                    </div>
                    <div>
                        <label>* Nacionalidad:</label> <input type="text" name="nacionalidad" value="<?php echo $row['nacionalidad']; ?>" />
                    </div>
                    <div>
                        <label>* Profesión:</label> <input type="text" name="profesion" value="<?php echo $row['profesion']; ?>" />
                    </div>
                    <div>
                        <label>* Lugar de Residencia:</label> <input type="text" name="residencia" value="<?php echo $row['residencia']; ?>" />
                    </div>
                    <div>
                        <label>* Teléfono:</label> <input type="text" name="telefono" value="<?php echo $row['telefono']; ?>" />
                    </div>

        </section>
        
        <section id="cont_med_sup_der" class="contenedor">
            <h2>Redes Sociales</h2>
            <div>
                        <label>Facebook:</label> <input type="text" placeholder="Pega la URL aquí" name="facebook" value="<?php echo $row['facebook']; ?>" />
                    </div>
            <div>
                        <label>Twitter:</label> <input type="text" placeholder="Pega la URL aquí" name="twitter" value="<?php echo $row['twitter']; ?>" />
                    </div>
            <div>
                        <label>YouTube:</label> <input type="text" placeholder="Pega la URL aquí" name="youtube" value="<?php echo $row['youtube']; ?>" />
                    </div>
            <div>
                        <label>Wordpress:</label> <input type="text" placeholder="Pega la URL aquí" name="wordpress" value="<?php echo $row['wordpress']; ?>" />
                    </div>
            <div>
                        <label>MySpace:</label> <input type="text" placeholder="Pega la URL aquí" name="myspace" value="<?php echo $row['myspace']; ?>" />
                    </div>
            <div>
                        <label>Yahoo:</label> <input type="text" placeholder="Pega la URL aquí" name="yahoo" value="<?php echo $row['yahoo']; ?>" />
                    </div>
            <div>
                        <label>Google +:</label> <input type="text" placeholder="Pega la URL aquí" name="google" value="<?php echo $row['google']; ?>" />
                    </div>
                </section>
        
        <section id="cont_med_inf_der" class="contenedor">
                    <div id="boton-actualizar">
                        <input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
                        <input class="boton_buscar" type="submit" name="actualizar" value="Actualizar" />
                    </div>
        </section>
            </form>
            <?php ?>

Ese es todo el codigo de la parte del actualizador, lo curioso como te mencionaba antes, es que si borro los campos de las redes sociales, funciona todo bn =/