PHP - actualizar valor campo mysql dentro de un div

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado su posición en 23 puestos en PHP (en relación al último mes)
Gráfica de PHP

actualizar valor campo mysql dentro de un div

Publicado por Unexes (124 intervenciones) el 19/06/2015 09:28:15
Hola a tod@s.

No se si mi problema es de este foro pero si no fuera así disculpadme.

Veréis os expongo el problema resumido a la mínima expresión y os pongo el código que tengo hecho,

Tengo una base de datos en Mysql con 3 campos: ("Id") - ("cantidad") y ("precio").

En mi página tengo un SELECT que se rellena con los datos del campo ("cantidad") y donde selecciono la cantidad y también tengo un DIV que dependiendo de la cantidad seleccionada en el SELECT me muestra el valor del campo ("Precio") correspondiente.

Mi problema es que con el código que pongo aquí, FUNCIONA pero no como yo quiero, porque me refresca la página y me produce ese antiestético parpadeo de la misma, y lo que necesito es que cuando cambio la selección de la ("cantidad") en el SELECT cambie también el precio en el DIV pero sin parpadear y sin recargarme toda la página.

Me podéis ayudar, Gracias a tod@s.

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
<?php
session_start();
$_SESSION["PrecioA6"]=5000;
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<title>Actualizar sin recargar</title>
</head>
        <?php
 
if(isset($_GET["sel_A6"])){
       $_SESSION["PrecioA6"]=$_GET["sel_A6"];
       }
       $sel_A6=$_SESSION["PrecioA6"];
 
        require_once('Connections/prueba.php');
		mysqli_query($conexion, "SET NAMES 'utf8'");
		?>
<body>
        <form name="filtrar" id="filtrar" method="GET"  action="">
    <select name="sel_A6" id="sel_A6" class="selector" onchange="this.form.submit()">
    <option value="<?php echo $_SESSION["PrecioA6"]; ?>" selected>&nbsp;&nbsp;<?php echo $_SESSION["PrecioA6"]; ?></option>
<?php
    $tablaseleccion = mysqli_query($conexion,"SELECT * FROM prueba WHERE Activacion = '1' ORDER BY Cantidad ASC");
    while ($registroseleccion  = mysqli_fetch_array($tablaseleccion ))
        if (isset($_SESSION["PrecioA6"])<> '-1')
		{
         echo "<option value='".number_format($registroseleccion['Cantidad'], 0, ',', '.')."' selected>&nbsp;&nbsp;".$_SESSION["PrecioA6"]."</option>";
        }else{
         echo "<option value='".$registroseleccion['Cantidad']."' >&nbsp;&nbsp;".number_format($registroseleccion['Cantidad'], 0, ',', '.')."</option>";
}
    mysqli_free_result($tablaseleccion);
?>
   </select>
                <div id="Precio">
                		<?php
                    $tablapresentacion = mysqli_query($conexion, "SELECT * FROM prueba WHERE Activacion = '1' And Cantidad ='". $_SESSION["PrecioA6"]."'");
                    while ($registropresentacion = mysqli_fetch_array($tablapresentacion)) {
                        ?>
                        <?php echo " <a class=\"tarifa\">".$registropresentacion['Precio']."</a>"; ?>                        <?php
                    }
                    mysqli_free_result($tablapresentacion);
                        ?>
                </div>
            </form>
</body>
</html>
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
Val: 6
Ha aumentado su posición en 23 puestos en PHP (en relación al último mes)
Gráfica de PHP

actualizar valor campo mysql dentro de un div

Publicado por Unexes (124 intervenciones) el 25/06/2015 10:09:36
Nadie me puede ayudar.

¿Debería buscar la respuesta en el foro de Ajax?
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

actualizar valor campo mysql dentro de un div

Publicado por abrkof (1 intervención) el 13/08/2015 06:02:04
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<script>
$(document).ready(function(){
   var j = jQuery.noConflict();
	j(document).ready(function()
	{
		j(".refresh").everyTime(200,function(i){
			j.ajax({
			  url: "/chatx/refresh_cha.phpt",
			  cache: false,
			  success: function(html){
				j(".refresh").html(html);
			  }
			})
		})
	});
//
   j('.refresh').css({color:"green"});
});
</script>
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
Imágen de perfil de Martin garcia

actualizar valor campo mysql dentro de un div

Publicado por Martin garcia (4 intervenciones) el 20/08/2015 01:55:57
Haber si no estoy fuera del tema. Por lo que veo esto es Ajax, yo lo hago con PHP y JS

Con un frame dentro de la pagina un script PHP que consulte y una funcion JS que recargue el frame

El frame dentro de la pagina lo puedes colocar donde quieras
1
2
3
4
5
6
7
8
9
10
11
12
<table width="800" align="center">
<tr>
        <td >Tarifa:</td>
        <td><label for="tarifa">
 
          <iframe src="frame_tarifas.php?tipos=<?php echo $tcobrada; ?>" name="lista_tarifas" width="120px"     height="30px" align="center"
          scrolling="no" frameborder="0px" id="lista_tarifas" target="_self" >Tu Navegador no está configurado para soportar estos frames</iframe>
 
        </label></td>
        </tr>
      <tr>
</table>

este es frame_tarifas.php
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
<?php require_once('Connections/parqueadero.php');
$tipos='Tipos';
$condi='';
if(isset($_GET['tipo']) && $_GET['tipo']!=''){
   $tipo=$_GET['tipo'];
   $condi="WHERE tipo='$tipo'";
}
mysql_select_db($database_parqueadero, $parqueadero);
$query_tarifa = "SELECT * FROM tarifas $condi GROUP BY tiempo";
$tarifa = mysql_query($query_tarifa, $parqueadero) or die(mysql_error());
$row_tarifa = mysql_fetch_assoc($tarifa);
$totalRows_tarifa = mysql_num_rows($tarifa);
if(isset($_GET['tipos']) && $_GET['tipos']!=''){
   $tipos=$_GET['tipos'];
  // $condi="WHERE tipo='$tipo'";
}
 
?>
 
<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>
<style type="text/css">
       body{overflow : hidden; overflow-y : scroll}
</style>
<script>
//Cargar tarifas
function actualizar_tar(tipo){
        // alert(tipo);
         //document.getElementById('lista_tarifas').src= 'frame_tarifas.php?tipo='+tipo;
         window.parent.document.getElementById('tarifa').value = tipo;
         //alert(cod);
         return;
}
</script>
</head>
 
<body onLoad="actualizar_tar(tarifa.value)">
<form name="form1" method="post" action="">
  <table width="300">
    <tr>
      <td><select name="tarifa" id="tarifa" onChange="actualizar_tar(tarifa.value)">
        <option value="<?php echo $tipos?>"><?php echo $tipos?></option>
        <?php
do {
?>
        <option value="<?php echo $row_tarifa['tiempo']?>"><?php echo $row_tarifa['tiempo']?></option>
        <?php
} while ($row_tarifa = mysql_fetch_assoc($tarifa));
  $rows = mysql_num_rows($tarifa);
  if($rows > 0) {
      mysql_data_seek($tarifa, 0);
	  $row_tarifa = mysql_fetch_assoc($tarifa);
  }
?>
      </select></td>
    </tr>
  </table>
</form>
</body>
</html>

Este es es select dentro de la misma pagina donde esta el frame
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<select name="tipos" id="tipos" onchange="return cargar_tar(tipos.value)" onkeypress="return saltar(event,this)">
            <option value="<?php echo $tipos; ?>"><?php echo $tipos; ?></option>
            <?php
do {
?>
            <option value="<?php echo $row_tipo['tipo']?>"><?php echo $row_tipo['tipo']?></option>
            <?php
} while ($row_tipo = mysql_fetch_assoc($tipo));
  $rows = mysql_num_rows($tipo);
  if($rows > 0) {
      mysql_data_seek($tipo, 0);
	  $row_tipo = mysql_fetch_assoc($tipo);
  }
?>
            </select>

y esta es la función JS llamada desde el SELECT que recarga el frame con la información selecionada
1
2
3
4
5
6
7
8
//Cargar tarifas
function cargar_tar(tipo){
        // alert(tipo);
         document.getElementById('lista_tarifas').src= 'frame_tarifas.php?tipo='+tipo;
         //window.parent.document.getElementById('codigo').focus();
         //alert(cod);
         return;
}

Como funciona? cuando hago una selección en el select de tipo de carro, me rellena el select de tarifas, que esta contenido en el frame "lista_tarifas", con una consulta que hace frame_tarifa.php condicionada por el valor que le envia la función "cargar_tar"

Si le interesa envíenme un correro donde les pueda enviar el código completo, claro que deben adaptarlo a sus bases de datos, conecciones etc.
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