PHP - Insertar Registro en DB

 
Vista:

Insertar Registro en DB

Publicado por efrain mejias (45 intervenciones) el 14/08/2012 15:52:06
hola

quiero insertar registros de un objeto Lista/ Menu , tengo el problema q guarda es el indice del Item y no el Nombre o texto...

tipo y clase son los valores de los objetos lista/menu

mysql_query ("INSERT INTO extensa (Cedula,Nombre,TipoTrabajador,ClaseTrabajador) VALUES
('".$_POST["cedula"]."','".$_POST["nombre"]."','".$_POST["tipo"]."','".$_POST["clase"]."')",$cnx);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Insertar Registro en DB

Publicado por ferbal (80 intervenciones) el 16/08/2012 18:29:15
Hola Efrain, podras mostrar el formulario que envia los datos para guardarlos en la bd?
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Insertar Registro en DB

Publicado por efrain mejias (45 intervenciones) el 17/08/2012 14:38:15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<script language="Javascript">
 
function lista2(Registrarse2)
{
  if (document.Registrarse2.tipo.value== 0 )
  {
   document.Registrarse2.clase.options[0]= new Option("","0","","");
   document.Registrarse2.clase.options[1]= new Option("Especializado","1","","");
   document.Registrarse2.clase.options[2]= new Option("NO Especializado","2","","");
   document.Registrarse2.clase.options[3]=null;
   }
   if (document.Registrarse2.tipo.value== 1)
  {
   document.Registrarse2.clase.options[0]= new Option("","0","","");
   document.Registrarse2.clase.options[1]= new Option("TSU","1","","");
   document.Registrarse2.clase.options[2]= new Option("Universitario","2","","");
   document.Registrarse2.clase.options[3]=null;
   }
   if (document.Registrarse2.tipo.value== 2)
  {
   document.Registrarse2.clase.options[0]= new Option("","0","","");
   document.Registrarse2.clase.options[1]= new Option("Especialista","1","","");
   document.Registrarse2.clase.options[2]= new Option("PostGrado","2","","");
   document.Registrarse2.clase.options[3]= new Option("Doctorado","2","","");
   }
 
 
}
</script>
 
</head>
 
<body>
  <img src="558351_4298908713472_1777978664_n.jpg" width="990" height="220" align="middle" />
 
 
  <table width="400" height="200" border="5" align="left" bordercolor="#FF00FF" bgcolor="#CCCCCC">
 
<form name="Registrarse2" action="FormGuardar.php" method="post" enctype="multipart/form-data">
 
  <th>DATOS PERSONALES </th><th><?php echo date("d-m-Y ") ; ?>
  </th>
    <tr>
	<td width="80" height="80" border="5"> <input name="foto" type="image"  value=""/>
    <?php echo "<img src =\"Fotos/$nombre\" align=\"middle\" width=\"150\" height=\"150\"/> ";?>
	<br /><input name ="dir" type="text" value="<?php echo $flag ?>" readOnly=s""/>
 
	    </td>
   <td>
    <input name="archivo" type="file" class="casilla" id="archivo" size="35" />
	  <input name="enviar" type="submit" class="boton" id="enviar" value="SubirFoto" />
	   <input name="action" type="hidden" value="upload" />	</td>
	</tr>
 
    <tr>
      <td>Cedula</td>
      <td><input type="text" name="cedula" /></td>
    </tr>
    <tr>
      <td>Nombre</td>
      <td><input type="text" name="nombre" /></td>
    </tr>
    <tr>
      <td>Tipo Trabajador</td>
      <td><select type="selected" name="tipo" onChange="lista2()" >
	    <option selected="selected">
        <option value="0">Obrero</option>
        <option value="1">Empleado</option>
        <option value="2">Directivo</option>
      </select></td>
    </tr>
	  <tr>
      <td>Clase Trabajador</td>
      <td><select type="selected" name="clase"  >
	    <option selected="selected">
      </select></td>
    </tr>
	<tr>
      <td>Observacion</td>
      <td><textarea name="observacion" rows="" ></textarea></td>
    </tr>
	<tr>
	  <td><img src="guardar.png" width="39" height="43" align="right" /> </td>
	  <td><br/> <input value="GUARDAR" type="submit" name="guardar"  /></td>
    </tr>
  </table>
   </form>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Insertar Registro en DB

Publicado por ferbal (80 intervenciones) el 22/08/2012 18:26:29
Efrain, el insert de php hace lo correcto. Inserta el valor 0, 1 o 2... porque son los que le definis en el formulario.

<td>Tipo Trabajador</td>
<td><select type="selected" name="tipo" onChange="lista2()" >
<option selected="selected">
<option value="0">Obrero</option>
<option value="1">Empleado</option>
<option value="2">Directivo</option>
</select></td>

Esto tendria que ser asi:

<option name="0" value="Obrero">Obrero</option>
<option name="1" value="Empleado">Empleado</option>
<option name="2" value="Directivo">Directivo</option>

No se si tengas que retocar el javascript, pero para el insert en la base de datos, la forma es esa.
name="1"(nombre variable) value="Empleado"(valor variable)
$1 = "Empleado";

Saludos,
Fernando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Insertar Registro en DB

Publicado por ferbal (80 intervenciones) el 22/08/2012 18:34:47
Perdon por mi grosero error:
el nombre de la variable lo toma del select. solo tenes que cambiar el valor del option 0, 1, 2 a Obrero, Empleado, Directivo.

<option value="Obrero">Obrero</option>
<option value="Empleado">Empleado</option>
<option value="Directivo">Directivo</option>

Si no lo queres hacer en el select. Cuando recibis los datos para insertar deberas convertirlos.
con algo asi:
if ($_POST["tipo"] == 0) $tipo = "Obrero";
o con switch segun el caso.
O con un array

y luego insertas

mysql_query ("INSERT INTO extensa (Cedula,Nombre,TipoTrabajador,ClaseTrabajador) VALUES
('".$_POST["cedula"]."','".$_POST["nombre"]."','".$tipo"."','".$_POST["clase"]."')",$cnx);

Saludos,
Fernando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar