Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-04-2007
Caray Caray is offline
Miembro
 
Registrado: abr 2006
Posts: 61
Poder: 19
Caray Va por buen camino
Insertar Datos Con Php

ke ONDA COMPAÑEROS DEL FORO OCUPO DE SU AYUDA.
tENGO UNA PAGINA CON DOS FORMULARIOS: eSTOY HACIENDO UNA PAGINA PARA ENCUESTAR:
eN EL PRIMER FORM ; ESTAN TRES SELECT, EL PIMERO MANDA LLAMAR A LA UNIDAD ACADEMICA, LUEGO EL SEGUNDO LLAMA UN DOCENTE DE ESA UNIDAD SELECCIONADA, Y EL TERCERO LA MATERIA KE IMPARTE EL DOCENTE, EN SI SON TRES SELECT DEPENDIENTES TODO LO JALA DE UNA BD EN MYSQL.
eN EL SEGUNDO FROM ESTAN LAS PREGUNTAS SON 18 LAS CUALES CADA UNA CUENTA CON 5 CHECKBOX PARA SELECCIONAR EL PUNTUAJE DE 1 A 5
td><span class="Estilo19">Al solicitarle dicho apoyo, &iquest;Qu&eacute; tanto consideras que aclara tus dudas? </span></td>
<td><input type='radio' name='pregunta[15]' value='1'></td>
<td><input type='radio' name='pregunta[15]' value='2'></td>
<td><input type='radio' name='pregunta[15]' value='3'></td>
<td><input type='radio' name='pregunta[15]' value='4'></td>
<td><input type='radio' name='pregunta[15]' value='5'></td>
</tr>
TODO ESO VA BIEN, PERO LA PARTE KE NO ME FUNCIONA ES LA SIGUIENTE, NO PUEDO ENVIAR LOS VALORES A LA TABLA "ENCUESTA" (ASI SE LLAMA LA TABLA)
IMPEMENTE ESTE CODIGO PHP POR KE ESTOY TRABAJANDO CON PHP Y dREAMWEAVER
AKI SE LOS PONGO
<?php
$mi_respuesta=$_POST['pregunta'];
$total_respuesta=count($mi_respuesta);
for($i=1;$i<=$total_respuesta;$i++)
{
$sql="INSERT INTO encuesta(c_unidad,c_profesor,c_materia,nopre,resp) VALUES (". $_POST['c_unidad'] .','. $_POST['c_profesor'] .','. $_POST['c_materia'] .','. $i .','. $mi_respuesta[$i]. ")";
mysql_query($sql);
}
?>
NO SE KE ES LO KE PASA, TAL VEZ ESTA MAL EL CODIGO O NO ESTA EN EL LUGAR KE DEBE ESTAR ( LO PUSE UNA LINEA ANTES DE TERMINAR EL SEUNDO FORM)

sE SUPONE KE HACE LO SIGUINTE
1.- aSIGNA EL ARREGLO DE LAS POSIBLES RESPUESTA EN UNA VARIABLE
2.- cUENTA CUANTAS PREGUNTAS CONTESTARON
3.- LUEGO EMPIEZA A HACER LA INSERCION
bUENO LA PAGINA NO MARCA ERROR PERO NO INSERTA NADA NO ME APARECE NADA DE DATOS, NO SE KE SEA NO LO PUEDO IDENTIFICAR POR ESO NECESITO KE ME AYUDES ESPERO SUS RESPUESTAS Y DE ANTEMANO MUCHISIMAS GRACIAS POR MOLESTARDE EN LEER.
SALUDO
Racomiendenme algo
__________________
La inteligencia me persigue, pero yo soy más rápido que ella.
Responder Con Cita
  #2  
Antiguo 20-04-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
Cita:
Empezado por Caray
MUCHISIMAS GRACIAS POR MOLESTARDE EN LEER.
SALUDO
Racomiendenme algo
si que fue molestia leer, así que la primera recomendación es que practiques tu redacción y ortografía.

la segunda es que si no inserta nada es posible que tu formulario esté usando como método GET en lugar de POST si esto no es así, entonces configura la opción display_errors en ON dentro de tu archivo php.ini esto te permite mostrar errores, o tambien puedes añadir la siguiente linea, justo despues de la ejecución de mysql_query:

Código PHP:
echo mysql_error(); 
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 20-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por droguerman
si que fue molestia leer, así que la primera recomendación es que practiques tu redacción y ortografía.
Por favor, no dejes de leer la guía de estilo de estos Foros Caray. Tiene razón el compañero "droguerman". El próximo mensaje de estas características será borrado, directamente. Espero que comprendas los motivos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 20-04-2007
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Cita:
Empezado por droguerman

Código PHP:
echo mysql_error(); 
Otra forma que yo utilizo para ver si todo anda bien es mostrar la consulta SQL en pantalla, así veo los valores que estoy enviando al servidor...

Hasta Luego .-
__________________
No todo es como parece ser...
Responder Con Cita
  #5  
Antiguo 23-04-2007
Caray Caray is offline
Miembro
 
Registrado: abr 2006
Posts: 61
Poder: 19
Caray Va por buen camino
Arrow Insertar datos con PHP

Hola compañeros de el Foro, primero que nada una disculpa por el anterior mensaje, y a continuacion mi pequeña gran duda.
Yo estoy trabajando con DreamWeaver ahi uso una conexion a la base de datos, la pregunta que les quiero hacer es la siguiente:
¿Para usa el codigo del Insert tengo que conectarme a la base de Datos a través de código escrito por el usuario o con la conexión que se hace en DreamWeaver se puede?.
Esperando su respuesta me despido agradeciendoles sus respuestas.
__________________
La inteligencia me persigue, pero yo soy más rápido que ella.
Responder Con Cita
  #6  
Antiguo 23-04-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
no he visto la primera forma puedes usar tu código siempre y cuando lo ejecutes en el servidor web
__________________
self.free;
Responder Con Cita
  #7  
Antiguo 24-04-2007
Caray Caray is offline
Miembro
 
Registrado: abr 2006
Posts: 61
Poder: 19
Caray Va por buen camino
Problema con Codigo

Hola gente nuevamente, haciendo caso a la recomendación de lucasarts_18 puse la linea que me recomendo (echo mysql_error()) debajo de mysql_query($sql);, y lo que veo es que me muestra más o menos el siguiente error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',,1,4)' at line 1

Tengo el siguiente código:
Código PHP:
<?php 
$mi_respuesta
=$_POST['pregunta']; 
$total_respuesta=count($mi_respuesta); 
for(
$i=1;$i<=$total_respuesta;$i++) 

$sql="INSERT INTO encuesta(c_unidad,c_profesor,c_materia,nopre,resp) VALUES ("$_POST['c_unidad'] .','$_POST['c_profesor'] .','$_POST['c_materia'] .','$i .','$mi_respuesta[$i]. ")"
mysql_query($sql); 

?>
Aque se debe ese error, será que mi código esta erroneo?.
Con esto me despido, gracias otra vez por sus respuestas.
__________________
La inteligencia me persigue, pero yo soy más rápido que ella.
Responder Con Cita
  #8  
Antiguo 24-04-2007
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Cita:
Empezado por Caray
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',,1,4)' at line 1
Aque se debe ese error, será que mi código esta erroneo?.
Con esto me despido, gracias otra vez por sus respuestas.
El mismo error de mysql lo está diciendo, tu sintaxis del Insert está mal hecha

Código PHP:
<?php 
$mi_respuesta
=$_POST['pregunta']; 
$total_respuesta=count($mi_respuesta); 
for(
$i=1;$i<=$total_respuesta;$i++) 

$sql="INSERT INTO encuesta(c_unidad,c_profesor,c_materia,nopre,resp) VALUES ("'$_POST['c_unidad']','$_POST['c_profesor']','$_POST['c_materia']',' $i ','$mi_respuesta[$i]'")"
mysql_query($sql); 

?>
modifiqué tu consulta, además creo que te está llegando un parametro vacío del insert.......por ahí creo que van los tiros.

Nos vemos..
__________________
No todo es como parece ser...
Responder Con Cita
  #9  
Antiguo 24-04-2007
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Cita:
Empezado por Caray
Hola gente nuevamente, haciendo caso a la recomendación de lucasarts_18
eso no lo dije yo, sino nuestro amigo droguerman, lo que dije yo es que sacaras en pantalla la consulta SQL, es decir que en pantalla te arroje algo así:

SELECT * FROM MITABLA

Luego con este string lo copias en un front-End para mysql (puede ser el mysqlYog, muy bueno... ) y con esto empiezas a depurar tu aplicación, bueno eso es todo, espero que te sirva, y lo siento, hasta ahora estoy muy verde con este de la depuración en PHP

Hasta Luego .-
__________________
No todo es como parece ser...
Responder Con Cita
  #10  
Antiguo 24-04-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
Cita:
Empezado por Caray
Hola gente nuevamente, haciendo caso a la recomendación de lucasarts_18 puse la linea que me recomendo (echo mysql_error()) debajo de mysql_query($sql);, y lo que veo es que me muestra más o menos el siguiente error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',,1,4)' at line 1

Tengo el siguiente código:
es obvio no está leyendo la variable POST, revisa las mayúsculas y minúsculas, si puedes adjunta parte de tu código para revisar
__________________
self.free;
Responder Con Cita
  #11  
Antiguo 25-04-2007
Caray Caray is offline
Miembro
 
Registrado: abr 2006
Posts: 61
Poder: 19
Caray Va por buen camino
Cierto Doguerman

Hola Doguerman con gusto te saludo al igual que a la demás gente del foro, fijate que en otro foro me pasaron un poco de código que pondré a continuación:
Código PHP:
foreach ($_POST['pregunta'] as $pregunta) { 
  
$sql="INSERT INTO encuesta (c_unidad, c_profesor, c_materia,nopre, resp) VALUES ("intval ($_POST['c_unidad']) .','intval ($_POST['c_profesor']) .','intval ($_POST['c_materia']) .','intval ($i) .','intval ($respuesta[$i]). ")"
  if (
mysql_query($sql) === false) { 
    echo 
$sql ."<br>\n"mysql_error (); 
  } 

Esto es para lo siguiente: esto lo que hace es convertir las cadenas vacias a 0 porque no existen. Al cargar la pagina e intentar hacer la inserción ya no me arroja error pero al ver si me inserto los datos me muestra puros 0(ceros),lo que a mi entender quiere decir que esas cadenas no existen.
¿Ahora como hacer entonces para que las cadenas contengan algo?
Voy desde el inicio: tengo 2 forms en el primero tengo tres combos dependientes(que obtuve de la pagina http://www.phpcondreamweaver.com.ar/...d-php-y-mysql/), uno de ellos tiene el siguiente código:
Código:
<select name="c_unidad" id="c_unidad" onChange="submit()">
        <option value="" <?php if (!(strcmp("", $_POST['c_unidad']))) {echo "SELECTED";} ?>>Seleccionar</option>
        <?php
do {  
?>
        <option value="<?php echo $row_Unidades['c_unidad']?>"<?php if (!(strcmp($row_Unidades['c_unidad'], $_POST['c_unidad']))) {echo "SELECTED";} ?>><?php echo $row_Unidades['nom_unidad']?></option>
        <?php
} while ($row_Unidades = mysql_fetch_assoc($Unidades));
  $rows = mysql_num_rows($Unidades);
  if($rows > 0) {
      mysql_data_seek($Unidades, 0);
   $row_Unidades = mysql_fetch_assoc($Unidades);
  }
?>
      </select>
Más abajo esta el segundo form, dentro de la misma página, ahí estan las preguntas con sus radiobuttons y más abajo el boton.
Te pongo el codigo de la pregunta:
Código:
<tr>
  <td><div align="center">3</div></td>
  <td><span class="Estilo19"><strong>Contenido del Programa </strong></span></td>
  <td><input type='radio' name='pregunta[3]' value='1'></td>
  <td><input type='radio' name='pregunta[3]' value='2'></td>
  <td><input type='radio' name='pregunta[3]' value='3'></td>
  <td><input type='radio' name='pregunta[3]' value='4'></td>
  <td><input type='radio' name='pregunta[3]' value='5'></td>
</tr>
Y ahora va el código que utilizo para la "inserción":
Código PHP:
$mi_respuesta=$_POST['pregunta']; 
$total_respuesta=count($mi_respuesta); 
   for(
$i=1;$i<=$total_respuesta;$i++) 
         { 
        
$sql="INSERT INTO 
encuesta(c_unidad,c_profesor,c_materia,nopre,resp) 
VALUES ("
$_POST['c_unidad'] .','$_POST['c_profesor'] .','.$_POST['c_materia'] .','$i .','$mi_respuesta[$i]. ")"
                        
mysql_query($sql); 
                 } 
$i es una variable que me va a insertar el número de la pregunta que en total son 18 y $mi_respuesta[$i] la respuesta de esa pregunta.
Como hacer para que me inserte algo?, el código de inserción esta fallando si la respuesta es si, en que falla?.
P.D. El metodo de los dos forms es POST
__________________
La inteligencia me persigue, pero yo soy más rápido que ella.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Insertar datos a word Manuel Servers 43 10-06-2015 21:14:16
insertar nuevos datos Max_E. SQL 3 21-01-2007 20:20:14
Insertar datos en un listview ebreton31 Varios 3 28-11-2006 01:53:29
Insertar datos en Base de Datos aoiTo C++ Builder 2 18-06-2006 15:42:43
como insertar datos Nelly Varios 1 19-11-2005 04:15:26


La franja horaria es GMT +2. Ahora son las 22:33:36.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi