Foros del Web » Programando para Internet » PHP »

No se me añaden todos los datos a la bd

Estas en el tema de No se me añaden todos los datos a la bd en el foro de PHP en Foros del Web. esa linea que esta hay es que usuario subio la foto y el nombre de la foto la que dice $sql guarda los datos de ...

  #31 (permalink)  
Antiguo 03/01/2012, 20:40
 
Fecha de Ingreso: julio-2010
Mensajes: 197
Antigüedad: 13 años, 9 meses
Puntos: 32
Respuesta: No se me añaden todos los datos a la bd

esa linea que esta hay es que usuario subio la foto y el nombre de la foto
la que dice $sql guarda los datos de la imagen URL nombre quien la cargo ect

y cual es la funcion que te falta
  #32 (permalink)  
Antiguo 04/01/2012, 06:48
 
Fecha de Ingreso: octubre-2011
Mensajes: 160
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: No se me añaden todos los datos a la bd

Con $nombre, me imagino que te referirás al nombre que le da el usuario a la foto, porque el nombre por el que hacemos la ruta al servidor es $nombre_nuevo, ¿verdad?. Aparte, ¿para qué añadir de nuevo el usuario?, es decir, si lo he añadido en el anterior input, con sus datos personales y tal, en éste, sólo necesito la idusuario (que es la clave foránea) para relacionarlo, y eso ya lo he incluido en el input de las fotos,¿es correcto?.
No es que me falten funciones, es que no sé cómo llamar desde html al php que realiza todo lo de la foto, para controlar el tamaño, el tipo de formato, etc. He estado mirando el html que tenías tú, pero mi problema es que ya tengo un action que llama a "registrandose.php", que es donde tengo todas las funciones, los insert y demás, entonces, no sé ahora cómo debería hacerlo, porque tengo entendido que no se pueden hacer dos actions en un sólo form.

Última edición por cheterporras2; 04/01/2012 a las 07:51
  #33 (permalink)  
Antiguo 04/01/2012, 13:47
 
Fecha de Ingreso: octubre-2011
Mensajes: 160
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: No se me añaden todos los datos a la bd

A ver,te comento, he intentado adaptar el php a lo que tengo, no me da problema para subir la foto al servidor, incluso le cambia de nombre, pero ahí se queda. En mi tabla fotos, tenía dos campos, uno para el id y otro para las imágenes, le he cambiado el nombre al campo "imagen" por "nombre_nuevo_con_carpeta", para que se correspondiera. Este el código html:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Documento sin título</title>
<
link href="file:///C|/Users/ESTHER/Desktop/animalmeeting/estilos.css" rel="stylesheet" type="text/css" />
<
link href="file:///C|/Users/ESTHER/Desktop/animalmeeting/registro2.css" rel="stylesheet" type="text/css" />



</
head>

<
body class="fondoregistro">
<
form action="registrandose.php" method="post" enctype="multipart/form-data" name="formulario" id="formulario">
  <
table width="1024" height="768" border="0">
    <
tr>
      <
td width="304" height="768"><table width="100%" height="768" border="0">
        <
tr>
          <
td height="350" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td width="84%" height="124">
          <
label for="imagen"></label>
            <
input name="imagen" type="file" class="subirfoto" onChange="muestra();" id="imagen" size="12" />
            <
input type="hidden" name="MAX_FILE_SIZE" value="100000">
            </
td>
          <
td width="16%"><input name="button" type="submit" class="botonenvio" id="button" value="Enviar" /></td>
        </
tr>
        <
tr>
          <
td height="148" colspan="2">&nbsp;</td>
        </
tr>
      </
table></td>
      <
td width="335"><table width="100%" height="768" border="0">
        <
tr>
          <
td height="103">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="60"><label for="pais"></label>
            <
input name="pais" type="text" class="pais" id="pais" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="21">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="52"><label for="provincia"></label>
            <
input name="provincia" type="text" class="provincia" id="provincia" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="15">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="57"><label for="ciudad"></label>
            <
input name="ciudad" type="text" class="ciudad" id="ciudad" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="5">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="45"><label for="zona"></label>
            <
input name="zona" type="text" class="zona" id="zona" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="21">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="50"><label for="especie"></label>
            <
input name="especie" type="text" class="especie" id="especie" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="15">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="57"><label for="raza"></label>
            <
input name="raza" type="text" class="raza" id="raza" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="5">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="45"><label for="edad"></label>
            <
input name="edad" type="text" class="edad" id="edad" maxlength="3" /></td>
        </
tr>
        <
tr>
          <
td height="15">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="61"><label for="sexo"></label>
            <
select name="sexo" class="sexo" id="sexo">
<
option>hembra</option>
<
option>macho</option>
            </
select></td>
        </
tr>
        <
tr>
          <
td height="46">&nbsp;</td>
        </
tr>
      </
table></td>
      <
td width="371"><table width="100%" height="768" border="0">
        <
tr>
          <
td height="103" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td width="43%" height="60"><input name="pedigri" type="radio" class="si" id="radio" value="si" checked="checked" />
            <
label for=""></label></td>
          <
td width="57%"><input name="pedigri" type="radio" class="no" id="radio2" value="no" />
            <
label for="radio2"></label></td>
        </
tr>
        <
tr>
          <
td height="21" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="52" colspan="2"><label for="capa"></label>
            <
input name="capa" type="text" class="capa" id="capa" maxlength="20" /></td>
        </
tr>
        <
tr>
          <
td height="15" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="57" colspan="2"><label for="nombreamo"></label>
            <
input name="nombreamo" type="text" class="nombreamo" id="nombreamo" maxlength="30" /></td>
        </
tr>
        <
tr>
          <
td height="5" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="45" colspan="2"><label for="telefono"></label>
            <
input name="telefono" type="text" class="telefono" id="telefono" maxlength="15" /></td>
        </
tr>
        <
tr>
          <
td height="21" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="50" colspan="2"><label for="email"></label>
            <
input name="email" type="text" class="email" id="email" maxlength="35" /></td>
        </
tr>
        <
tr>
          <
td height="15" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="57" colspan="2"><label for="usuario"></label>
            <
input name="usuario" type="text" class="usuario" id="usuario" maxlength="40" /></td>
        </
tr>
        <
tr>
          <
td height="5" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="45" colspan="2"><label for="contrasenna"></label>
            <
input name="contrasenna" type="password" class="contrasena" id="contrasenna" maxlength="25" /></td>
        </
tr>
        <
tr>
          <
td height="15" colspan="2">&nbsp;</td>
        </
tr>
        <
tr>
          <
td height="61" colspan="2"><label for="repcontrasenna"></label>
            <
input name="repcontrasenna" type="password" class="repcontrasenna" id="repcontrasenna" maxlength="25" /></td>
        </
tr>
        <
tr>
          <
td height="46" colspan="2">&nbsp;</td>
        </
tr>
      </
table></td>
    </
tr>
  </
table>
</
form>
</
body>
</
html
  #34 (permalink)  
Antiguo 04/01/2012, 13:48
 
Fecha de Ingreso: octubre-2011
Mensajes: 160
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: No se me añaden todos los datos a la bd

Y el php
Código PHP:
<?php
include("conexion.php");
function 
formRegistro(){
?>

 <?php
 
}
// verificamos si se han enviado ya las variables necesarias.
{
   
$usuario $_POST['usuario'];
   
$contrasenna $_POST['contrasenna'];
   
$repcontrasenna $_POST['repcontrasenna'];
   
$email $_POST['email'];
   
$nombreamo $_POST['nombreamo'];
   
$raza $_POST['raza'];
   
$telefono $_POST['telefono'];
   
$edad $_POST['edad'];
   
$sexo $_POST['sexo'];
   
$provincia $_POST['provincia'];
   
$capa $_POST['capa'];
   
$pais $_POST['pais'];
   
$pedigri $_POST['pedigri'];
   
$ciudad $_POST['ciudad'];
   
$zona $_POST['zona'];
   
$especie $_POST['especie'];
   
$imagen $_POST['imagen'];

  
   

   
   
// Hay campos en blanco
  
   
if($usuario=="" || $contrasenna=="" || $repcontrasenna=="" || $email=="" || $nombreamo=="" || $raza=="" || $telefono=="" || $edad=="" || $sexo=="" || $provincia=="") {
      echo 
"un campo está vacio.";
      
formRegistro();
   }else{
      
// ¿Coinciden las contraseñas?
      
if($contrasenna!=$repcontrasenna) {
         echo 
"Las contraseñas no coinciden";
         
formRegistro();
      }else{
        


$usuario trim($_POST['usuario']);
$contrasenna $_POST['contrasenna']; 
$email $_POST['email']; 
 
$sql_chk mysql_query("SELECT usuario, email FROM usuarios WHERE usuario='$usuario' OR email='$email'",$link) or die(mysql_error()); 
if(
mysql_num_rows($sql_chk)>0){
echo 
"El nombre de usuario o la cuenta de correo estan ya en uso";
formRegistro();
} else { 



 


 
 

          
mysql_query("INSERT INTO usuarios (usuario, contrasenna, ciudad, email, nombreamo, telefono, pais, zona, provincia) VALUES ('$usuario','$contrasenna','$ciudad','$email','$nombreamo','$telefono','$pais','$zona','$provincia')",$link);
           
        
$id mysql_insert_id();


            
           
mysql_query("INSERT INTO animal (idusuario, usuario, raza, edad, sexo, especie, capa, pedigri, nombreamo) VALUES ($id,'$usuario','$raza','$edad','$sexo','$especie','$capa','$pedigri','$nombreamo')",$link);
           
            {        
$id mysql_insert_id();

           
           
//extensiones de archivos disponibles
$archivos_disp_ar = array('jpg''jpeg''gif''png''tif''tiff''bmp');
//carpeta donde vamos a guardar la imagen
$carpeta 'imagen/';
//recibimos el campo de imagen
$imagen $_FILES['imagen']['tmp_name'];
//guardamos el nombre original de la imagen en una variable
$nombrebre_orig $_FILES['imagen']['name'];
//el proximo codigo es para ver que extension es la imagen
$array_nombre explode('.',$nombrebre_orig);
$cuenta_arr_nombre count($array_nombre);
$extension strtolower($array_nombre[--$cuenta_arr_nombre]);

//validamos la extension
if(!in_array($extension$archivos_disp_ar)) $error "Este tipo de archivo no es permitido";

if(empty(
$error)){

//creamos nuevo nombre para que tenga nombre unico
$nombre_nuevo time().'_'.rand(0,100).'.'.$extension;
//nombre nuevo con la carpeta
$nombre_nuevo_con_carpeta $carpeta.$nombre_nuevo;
//por fin movemos el archivo a la carpeta de imagenes
$mover_archivos move_uploaded_file($imagen $nombre_nuevo_con_carpeta);
//de damos permisos 777
chmod($nombre_nuevo_con_carpeta,0777);

//recojo los datos
$sql mysql_query("INSERT INTO fotos (idusuario,imagen)VALUES('$id','$nombre_ nuevo_con_carpeta')");

//este codigo es para informarle al usuario que el archivo se ha cargado exitosamente
$respuesta ='Su archivo se ha enviado exitosamente';}

/*            
//datos del arhivo  
$nombre_archivo = $HTTP_POST_FILES["imagen"]["name"];  
$tipo_archivo = $HTTP_POST_FILES["imagen"]["type"];  
$tamano_archivo = $HTTP_POST_FILES["imagen"]["size"];  

//compruebo si las características del archivo son las que deseo  

if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && (    $tamano_archivo < 100000))) 
{  
    echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>"; 
?> 
    <script language="javascript"> 
        setTimeout("url()",3000); 
        function url() 
        { 
        window.history.back(); 
        } 
    </script>            
<?     

else 
{  
    $nom_img= $nombre_archivo; 
     
    $directorio = 'imagen/'; 

    if (move_uploaded_file($HTTP_POST_FILES['imagen']['tmp_name'],$directorio . "/" . $nom_img)) 
    {  
           mysql_query("INSERT INTO fotos (idusuario, imagen) VALUES ('$id', '$imagen/$nom_img')",$link);
           
            $respuesta ='Su archivo se ha enviado exitosamente';
       
       



    } 
    else 
    { 
        echo "error al subir la foto"; 
    } 


    */    
            
            
echo 'El usuario '.$usuario.' ha sido registrado de manera satisfactoria.<br />';
            echo 
'Ahora puede entrar ingresando su usuario y su password<br />';
         
      } 
            
?>
            
            //Un formulario de login, que aparecera despues de el registro fue exitoso
            
            <FORM ACTION="comprobar.php" METHOD="post">
              Usuario : <INPUT TYPE="text" NAME="usuario" SIZE=20 MAXLENGTH=20><br />
              Password: <INPUT TYPE="password" NAME="password" SIZE=10 MAXLENGTH=10><br />
              <INPUT TYPE="submit" VALUE="Ingresar">
            </FORM>
            <?php
            
         
}
      }
   }

?>

Etiquetas: html, bases-de-datos
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 03:24.