Foros del Web » Programando para Internet » PHP »

problema para insertar datos en una tabla

Estas en el tema de problema para insertar datos en una tabla en el foro de PHP en Foros del Web. Buenas gente. Resulta que tengo un problema a la hora de insertar datos en una tabla. Este es el codigo que utilizo Código PHP: function  ...
  #1 (permalink)  
Antiguo 12/05/2011, 20:53
 
Fecha de Ingreso: abril-2011
Mensajes: 22
Antigüedad: 13 años, 1 mes
Puntos: 0
problema para insertar datos en una tabla

Buenas gente. Resulta que tengo un problema a la hora de insertar datos en una tabla. Este es el codigo que utilizo

Código PHP:
function insertarReg($modelo_$descripcion_){
        
$servidor "localhost";
        
$usuario "root";
        
$password "";
        
$sdb "usuarios";
        
$ilink3=mysql_connect($servidor,$usuario,$password) or die(mysql_error());
        
mysql_select_db($sdb,$ilink3);
        
        
$inserta"insert into prod (modelo,desc) values ('$modelo_','$descripcion_')";
        
$resultado3=mysql_query($inserta,$ilink3) or die (mensaje_personalizado());
        if (!
$resultado3)
          return 
false;
        else{
            return 
true;}

el form no es nada del otro mundo. les dejo las lineas

Código:
<?php if(!isset($status)): ?>
			
			<h1>Formulario de Registro</h1>
			
			<form action="carga_avisos.php" method="post" name="form2" id="form2">
				<td>
				<td width="50"; style="float:left;">
				<label for="marca_modelo">Marca y Modelo</label>
				</td>
				
				<td width="50"; style="float:right;">
				
				<input tabindex="1" name="marca" style=" width:400px" id="marca" type="text" class="text <?php echo $modelo ?>" value="<?php echo $modeloValue ?>" />
				<label class=requisites>(Escriba solo la marca del articulo que desea publicar)</label></td>
				
				</td>
<label for="comentarios">Descripcion del Producto</label>
				<textarea name="descripcion" class="text <?php echo $descripcion ?>" id="descripcion" style="width:500px; height:250px" tabindex="5"><?php echo $descripcionValue ?></textarea>
</form>
<?php else: ?>
				<?php 
				if(InsertarReg($modeloValue, $descripcionValue)):?>
												
						<div class="respuesta_insert">
						<h1>Gracias por registrarte en ZonaBiker!!</h1>
						<h1>Esperamos que disfrutes tanto como nosotros la pasión de ser Biker!</h1>
						<h1>>ZonaBiker.com.ar</h1>	
					  
						</div>
				<?php else: ?>
						<?php if ($respuesta == 1) ?>
						<h1 style="font-color: red">No se ha podido insertar el registro en nuestra base de datos</h1>
				
				<?php endif; ?>
			<?php endif; ?>

Ahora el problema es que este mismo codigo lo utilizo para registrar los usuarios de mi pagina. Pero cuando cambio los datos para que cargue los articulos de cada usuario deja de funcionar.

Tengo que utilizar este otro, que si funciona pero que no me resulta util. Debido a que con los "returns" que tengo en el otro codigo pongo donde yo quiero que se han subido los datos al servidor.

Código PHP:
if(isset($_POST['modelo']) && !empty($_POST['modelo']) &&
    isset(
$_POST['descripcion']) && !empty($_POST['descripcion'])) {

        
// Si entramos es que todo se ha realizado correctamente
        
        
        
$link mysql_connect("localhost","root","");
        
mysql_select_db("productos",$link);

        
// Con esta sentencia SQL insertaremos los datos en la base de datos
        
mysql_query("INSERT INTO prod (modelo)
        VALUES ('{$_POST['modelo']}')"
,$link);

        
// Ahora comprobaremos que todo ha ido correctamente
        
$my_error mysql_error($link);

        if(!empty(
$my_error)) {

            echo 
$my_error

        } else {

            echo 
"Los datos han sido introducidos satisfactoriamente";

        }

    } else {

        echo 
"Error, no ha introducido todos los datos";

    } 

Espero se haya entendido y alguien me pueda dar una mano. gracias
  #2 (permalink)  
Antiguo 13/05/2011, 00:20
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 13 años, 6 meses
Puntos: 48
Respuesta: problema para insertar datos en una tabla

Lo que sucede esque jamas guardas los valores en las variables $modeloValue y $descripcionValue y pues no envia nada, otra cosa tambien hay que revisar bien lo de descripcion porque en el codigo que mencionas que si te funciona solo insertas el modelo pero no la descripcion.

Bueno viendo eso tu codigo "bien" seria algo asi:

Código PHP:
<?php
function insertarReg($modelo$descripcion){
        
$servidor "localhost";
        
$usuario "root";
        
$password "";
        
$db "usuarios";
        
$link mysql_connect($servidor,$usuario,$password) or die(mysql_error());
        
mysql_select_db($db,$link);
        
        
$inserta "insert into prod (modelo, desc) values ('".$modelo."','".$descripcion."')";
        
$resultado3 mysql_query($inserta,$link);
        if (!
$resultado3)
        {
          return 
false;
        }else{
            return 
true;
        }


if( !isset(
$_POST['enviar']) && !isset($_POST['modelo']) && empty($_POST['modelo']) && !isset($_POST['descripcion']) && empty($_POST['descripcion']))
?>
            
            <h1>Formulario de Registro</h1>
            
            <form name="form2" method="post">
                <td>
                <td width="50"; style="float:left;">
                <label for="marca_modelo">Marca y Modelo</label>
                </td>
                
                <td width="50"; style="float:right;">
                
                <input tabindex="1" name="marca" style=" width:400px" id="marca" type="text" class="text <?=$modelo?>" value="<?=$modeloValue?>" />
                <label class=requisites>(Escriba solo la marca del articulo que desea publicar)</label></td>
                
                </td>
<label for="comentarios">Descripcion del Producto</label>
                <textarea name="descripcion" class="text <?=$descripcion?>" id="descripcion" style="width:500px; height:250px" tabindex="5"><?=$descripcionValue?></textarea>
                <input type="submit" name="enviar" value="Enviar" />
</form>
<?php 
}else{
    if( 
InsertarReg($_POST['modelo'], $_POST['descripcion']) )
    {
        
?>
                                                
                        <div class="respuesta_insert">
                        <h1>Gracias por registrarte en ZonaBiker!!</h1>
                        <h1>Esperamos que disfrutes tanto como nosotros la pasión de ser Biker!</h1>
                        <h1>ZonaBiker.com.ar</h1>    
                      
                        </div>
        <?
    
}else{
        
?>
                        <h1 style="font-color: red">No se ha podido insertar el registro en nuestra base de datos</h1>
        <?
    
}
}
?>

Etiquetas: tabla
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 14:32.