Foros del Web » Programando para Internet » PHP »

ya puede subir imagenes ahora como las muestro

Estas en el tema de ya puede subir imagenes ahora como las muestro en el foro de PHP en Foros del Web. hola a todos. realizando un sitio web para un colegio, donde los profesores puedan ingresar sus preguntas y los alumnos respondan esas preguntas primero ya ...
  #1 (permalink)  
Antiguo 04/11/2004, 15:33
 
Fecha de Ingreso: abril-2004
Ubicación: Chile, la serena cuarta region de coquimbo
Mensajes: 21
Antigüedad: 19 años, 10 meses
Puntos: 0
ya puede subir imagenes ahora como las muestro

hola a todos.

realizando un sitio web para un colegio, donde los profesores puedan ingresar sus preguntas y los alumnos respondan esas preguntas

primero ya pude subir imagenes al server gracias a unos ciber amigos, son varios campos, la tabla preguntas tiene los siguientes campos

* id_pregunta(clave primaria, no es autoincrementable...con esto hare busqedas)

*nivel_dificultad(un list con tres opciones)

* pregunta (un texto grande "blob2)

*codigo_prueba(con un combox box, el cual me jala los datos que se ingresaron en otra tabla, problema ya solucionado)

*foto_pregunta (con un type=file,para selecionar la imagen)

*op_A (una posible respuesta a la preguntas lo mismo con las demas opciones)

*op_B

*op_c

*op_D

*respuesta (aqui ira el nombre de la opcion correcta..A,B,C o D, para luego poder validar las preguntas y sacar puntajes , preguntas correctas,incorrectas)

*imagen_respuesta (tambien con un type=file...por si es que al profe se le ocurre poner una foto de la respuesta, para el caso de las pruebas demateticas)


*justificacion (un campo de texto, para luego entregar un mejor respuesta y reporte al alumno si lo desea)

como veran esta es la tabla pregunta, que solo vera el profesor, y podra ingresar sus preguntas


a lo que voy, es que ya puedo subir imagenes y todos los datos antes mencionados, el problema es que ahora quiero mostrarlos para que asi el profesor pueda modificar o eliminar, es un simple modifcacion con php, pero ese codigo no lo he encontrado, no me resulta, no me muestra la imagen.

algo asi como: que me pida el id_pregunta y al hacer enter a prsionar el boton, me muestre los datos ya mencionados, para poder modificarlos.

este es el primer problema que me encuentro, tengo muchas dudas mas, como por ejemplo, validar los option cuando el alumno responda la prueba, o como por otro ejemplo, contar y validar las preguntas correctas etc.

hay otra duda mas, pero primero tengo que resolver esta, para poder pasar a la otra.- gracias de ante manos, adios.-
__________________
Gracias por tu tiempo.-

  #2 (permalink)  
Antiguo 05/11/2004, 12:03
 
Fecha de Ingreso: abril-2004
Ubicación: Chile, la serena cuarta region de coquimbo
Mensajes: 21
Antigüedad: 19 años, 10 meses
Puntos: 0
que pasa en este foro....

....haber primero y para disminuir el probleaçma, ya hice un modificar el cual me pedi el id de la pregunta y me arroja los campos, lo que si no puedo hacer es que me tire la imagen pero en tamaño ajustado,que no sea del mismo tamaño que la imagen original.....ya que puede ser una imagen muy grande para la pantalla,

si alguien sabe como hacer algo asi, que me arroje la imagen pero en tamaño ajustado de unos 5 a 7 cm o algo asi.

gracias por todo.-
__________________
Gracias por tu tiempo.-

  #3 (permalink)  
Antiguo 05/11/2004, 12:58
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 7 meses
Puntos: 102
Ya buscaste en este foro??? , no lo creo... Simplemente, hay un tutorial ya famoso hecho por el buen Cluster que te puede servir de guía...

http://www.forosdelweb.com/f18/tutorial-ejemplo-subir-archivos-bd-guardando-bd-binario-127775/

Busca, intenta, y cuando hagas preguntas pon el código de lo que tienes y lo que haz intentado... luego ya preguntarás: ¿Qué pasa en este foro??
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #4 (permalink)  
Antiguo 05/11/2004, 15:35
 
Fecha de Ingreso: abril-2004
Ubicación: Chile, la serena cuarta region de coquimbo
Mensajes: 21
Antigüedad: 19 años, 10 meses
Puntos: 0
ok , lo que pasa es que el tiempo ya no me alcanza

mira

<p>Selecciona una imagen</p>
<input type="file" onChange="document.imagen.src='file:///' + this.value"><br><br>
Vista previa:<br><br>
<img src="imagenpordefecto.gif" name="imagen">

esto lo saque por ahi, esta bueno, pero me tira la imagen grande, no habra una manera de hacer que te haga una miniatura.... hay un codigo de donde saque este, que te dice como hacerlo pero esta muy complejo y no se como asociarlo con php para que me muestre.-


aqui mostrare el codigo que tengo pero solo para el ingreso de preguntas que tiene campos como

id_pregunta
cod_prueba
cod_topico
nivel_dificultad
pregunta
foto_pregunta
op_A
op_B
op_C
op_D
op_E
respuesta
foto_respuesta
justificacion




este es el html formulario de ingreso

<html>
<head>
<title>Generar Preguntas</title>
</head>
<body>

<p>

<FORM METHOD="POST" ACTION="preguntaguardadacorrectamente.php" name="subir" enctype="multipart/form-data">
<p>
<?

//un contador de registro el cual sirve
//para que el profe sepa cual numero le toca
//conecto con la base de datos:
$conector = mysql_connect("localhost","root");
mysql_select_db("BasededatosSisgep",$conector);

//seleccionamos todos o un campo de la tabla deseada:
$consulta = "select * from preguntas";
//aqi manda la consulta a la bd
$consulto = mysql_query($consulta,$conector);

//contamos con nuestra función, pasando el resultado a otra variable:
$nusuarios = mysql_num_rows($consulto);

//imprimimos esa variable:
echo "<b>Número de preguntas:</b> ";
echo $nusuarios;

//cerramos conexión:
mysql_close($conector);
?>
</p>
<p>Ingrese la secuencia de numero de preguntas para el id_pregunta o</p>
<p>ingrese cualquier codigo para su pregunta</p>
<p>i<strong>d pregunta</strong>
<input name="id_pregunta" type="TEXT" id="id_pregunta">
</p>
<p>codigo prueba
<select name="combitoprueba" size="1">
<?php


function conectar($localhost, $root, $BasededatosSisgep){
if (!($link=mysql_connect($localhost,$root))){

echo "no se pudo conectar";
exit();
}
if(!(mysql_select_db($BasededatosSisgep,$link))){
echo "no se pudo seleccionar la db";
exit();
}
return $link;
}


$conexion = conectar("localhost","root","BasededatosSisgep");
$sql = mysql_query("select COD_PRUEBA from prueba", $conexion);

while($row = mysql_fetch_array($sql)){
$campo = $row["COD_PRUEBA"];
echo "<option value=$campo>$campo</option>";
}

mysql_free_result($sql);
mysql_close($conexion);
?>
</select>
</p>
<p>nombre topico
<select name="combitopico" size="1">
<?php


function conectartopico($localhost, $root, $BasededatosSisgep){
if (!($link=mysql_connect($localhost,$root))){

echo "no se pudo conectar";
exit();
}
if(!(mysql_select_db($BasededatosSisgep,$link))){
echo "no se pudo seleccionar la db";
exit();
}
return $link;
}


$conexion = conectartopico("localhost","root","BasededatosSisg ep");
$sql = mysql_query("select NOM_TOPICO from topicos", $conexion);

while($row = mysql_fetch_array($sql)){
$campo = $row["NOM_TOPICO"];
echo "<option value=$campo>$campo</option>";
}

mysql_free_result($sql);
mysql_close($conexion);
?>
</select>
</p>
<p><br>
pregunta
<textarea name="pregunta" cols="50" id="pregunta"></textarea>
</p>
<p>&nbsp;</p>
<p>Seleccione un tipo de nivel
<select name="niveldificultad" id="niveldificultad">
<option value="1">Dificil</option>
<option value="2">Medio</option>
<option value="3">Facil</option>
</select>
</p>
<p>&nbsp;</p>
<p>Seleccione una imagen para esta pregunta(puede dejar en blanco este campo)
</p>
<tr>

<input type=hidden name=MAX_FILE_SIZE value=400000>


<td align=right width=10%><b>Foto Pregunta:</b> </td>
<td><input name=userfile type=file></td>

</tr>
<p>OPCION A :
<input name="OPCION_A" type="text" id="OPCION_A" size="70">
</p>
<p>OPCION B :
<input name="OPCION_B" type="text" id="OPCION_B" size="70">
</p>
<p>OPCION C:
<input name="OPCION_C" type="text" id="OPCION_C" size="70">
</p>
<p>OPCION D:
<input name="OPCION_D" type="text" id="OPCION_D" size="70">
</p>
<p>OPCION E :
<input name="OPCION_E" type="text" id="OPCION_E" size="70">
</p>
<p>RESPUESTA :
<textarea name="RESPUESTA" cols="100" id="RESPUESTA"></textarea>
</p>
<p>FOTO RESPUESTA :
<input name="userfilerespuesta" type="file" id="userfilerespuesta">
</p>
<p>&nbsp; </p>
<p>JUSTIFICACION : </p>
<p>
<textarea name="JUSTIFICACION" cols="50" id="textarea"></textarea>
</p>
<p>&nbsp;</p>
<p>

<br>
<br>
<INPUT TYPE="SUBMIT" value="Insertar">
</p>
</FORM>

</p>
</body>
</html>


este es al que llame el formulario anterior, donde me guarda el registro




</script>
</head>

<body>

<div id="Layer1" style="position:absolute; left:47px; top:25px; width:382px; height:37px; z-index:1"><strong><font size="4">Pregunta
Ingresada correctamente</font></strong></div>
<p>&nbsp;</p>
<p>&nbsp;</p>


<?php

//este es el que procesa un ingreso , ademas verifica que el registro no este ingresado
//en este casa el nombre es el id

//si esta ingresado arroja un mensaje
//Establece la conexión con mysql


$conexion = mysql_connect("localhost", "root");
if (! $conexion)
{
echo "<h2 align='center'>ERROR: Imposible establecer conexión con el servidor</h2>";
exit;
}


//Selecciona la base de clientes


mysql_select_db("BasededatosSisgep",$conexion);


//Hace una consulta para ver si cliente existe


$result=mysql_query("SELECT * FROM preguntas where numero_pregunta='$id_pregunta'",$conexion);

//Ve el número de filas que obtiene el select si es 0 el cliente no existe

$filas=mysql_affected_rows($conexion);
if ($filas==0)
{



//aqui empieza codigo subir
//obteniendo datos del archivo*****************importante para el tamaño y tipo

$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];

$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];

$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];

if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 400000))) {

echo "<center><b>La extensión o el tamaño de los archivos no es correcta. <br>Se permiten archivos .gif o .jpg<br>se permiten archivos de 400 Kb máximo.</b></center>";

}else{

if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo)){

echo "<center><b>El archivo Imagen Pregunta ha sido cargado correctamente.</b></center>";

}else{

echo "<center><b>Ocurrió algún error al subir el fichero. No pudo guardarse.</b></center>";

}

}

//AQUI EMPIEZA EL CAMPO ARCHIVO PERO DE FOTO RESPUESTA

$nombre_archivorespuesta = $HTTP_POST_FILES['userfilerespuesta']['name'];

$tipo_archivo = $HTTP_POST_FILES['userfilerespuesta']['type'];

$tamano_archivo = $HTTP_POST_FILES['userfilerespuesta']['size'];

if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 400000))) {

echo "<center><b>La extensión o el tamaño de los archivos no es correcta. <br>Se permiten archivos .gif o .jpg<br>se permiten archivos de 400 Kb máximo.</b></center>";

}else{

if (move_uploaded_file($HTTP_POST_FILES['userfilerespuesta']['tmp_name'], $nombre_archivorespuesta)){

echo "<center><b>El archivo Imagen Respuesta ha sido cargado correctamente.</b></center>";

}else{

echo "<center><b>Ocurrió algún error al subir el fichero. No pudo guardarse.</b></center>";

}

}
//TERMINA CAMPO ARCHIVO PERO DE FOTO RESPUESTA









include "conexion.php";




$insert = "insert into preguntas (numero_pregunta,PREGUNTA,COD_TOPICO,COD_PRUEBA,NI VEL_DIFICULTAD,FOTO_PREGUNTA,OP_A,OP_B,OP_C,OP_D,O P_E,RESPUESTA,FOTO_RESPUESTA,JUSTIFICACION) values ('$id_pregunta','$pregunta','$combitopico','$combi toprueba','$niveldificultad','$nombre_archivo','$O PCION_A','$OPCION_B','$OPCION_C','$OPCION_D','$OPC ION_E','$RESPUESTA','$nombre_archivorespuesta','$J USTIFICACION')";


mysql_query($insert) or die ("No se ha logrado grabar la info de la foto, intentalo denuevo ".mysql_error());







}
else
{
// header("location:yaexistenumeropregunta.php");

?><script>window.location="yaexistenumeropregunta. php"</script><?



// echo "Cliente ya existe: Datos no se grabaron";
}
mysql_free_result($result);
mysql_close($conexion);

//termina verificacion de registro
?>






<p>&nbsp;</p>



<h1><div align="center">Registro Insertado</div></h1>
<div align="center"><a href="index.php">regresar al home</a></div>


</body>
</html>




el problema es que me gustaria que me arrojara la imagen en el formulario html ,el primero de arriba, pero que me la muestre en miniatura....si alguien me puede ayudar por favor , se agredece nuevamente
__________________
Gracias por tu tiempo.-

  #5 (permalink)  
Antiguo 09/11/2004, 17:04
 
Fecha de Ingreso: abril-2004
Ubicación: Chile, la serena cuarta region de coquimbo
Mensajes: 21
Antigüedad: 19 años, 10 meses
Puntos: 0
nada.....ya pude hacer que me la mostrara

gracias por todo.


__________________
Gracias por tu tiempo.-

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 00:39.