[Php-avanzado] consulta javascript

Damián Colledani damian_colledani en yahoo.com
Sab Abr 13 10:46:27 ART 2013


Acá te mando el script. Como siempre gracias viejo. Despues te quería consultar por el módulo de Barcode para el tratamiento del código de barras que complementa este trabajo.Salu2

--- El vie 12-abr-13, Matias Gea <matigea en gmail.com> escribió:

De: Matias Gea <matigea en gmail.com>
Asunto: Re: [Php-avanzado] consulta javascript
Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar>
Fecha: viernes, 12 de abril de 2013, 15:51

Antes te debe tirar algun otro error de js, que hace que la funcion no se defina. Pasá el código completo de la página (html y js) y te digo.
Saludos!



El 12 de abril de 2013 11:35, Damián Colledani <damian_colledani en yahoo.com> escribió:


Hola, Matías. Puse tu función directamente, el hecho es que me sigue tirando 

Uncaught ReferenceError: rellena is not defined 

no se que puede ser. que hago mal?
--- El vie 12-abr-13, Matias Gea
 <matigea en gmail.com> escribió:



De: Matias Gea <matigea en gmail.com>
Asunto: Re: [Php-avanzado] consulta javascript
Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar>


Fecha: viernes, 12 de abril de 2013, 13:07

Hola, Damián.
Me pasaste 4 funciones distintas, no sé por qué.

Te paso una que debería funcionar, con un par de modificaciones. Con respecto a jQuery, sí, es muy útil, pero tenés que ver si vale la pena cargar un framework de 100k sólo para hacer lo mismo que con document.getElementById.





Va la función sin jQuery:

// Calculo que llamaste a la función a través del atributo onchange del input con "rellena(this.value)"

function rellena(codigo){
   // En a tenemos un string que representa el valor del input desde el que se llama la función.





   // var o , u;  // Los nombres son muy poco representativos :-) te los cambio
   var descripcion, precio;
   var valid1 = ^\d+$;
   // document.write("parametro"+a);
   // document.write('<br>');  // Esta es una forma bastante incómoda de hacer debug, fijate la de abajo





   console.log('Codigo en el input: ', codigo); // Esto te muestra un mensaje en la consola de javascript   // Si usás Chrome, visualizás la consola con Ctrl+Shift+J o F12, si usás Firefox igual (si no me equivoco), pero te recomiendo instalar firebug.




   if (valid1.test(codigo)){
      console.log('El código es valido');
<?php
   include ("conecta.php");
   $result = mysql_query("SELECT * FROM productos ", $link) or die("$sql <br>".mysql_error());




   while ($row = mysql_fetch_array($result)){
?>
      if (codigo == '<?php echo $row['codigo'];?>' ) {
         descripcion = "<?php echo $row['descripcion'];?>";




         precio = "<?php echo $row['precio'];?>";
         break;
      } 
<?php } ?>
   }else{
      console.log('El código NO es valido');

      alert('Solo Numeros por favor...');




   }
   documentgetElementById("descripcion").value = descripcion;
   documentgetElementById("precio").value = precio;
}

Cualquier cosa avisame.


Saludos!

El 12 de abril de 2013 07:48, Damián Colledani <damian_colledani en yahoo.com> escribió:




Hola Matias. Logre ver por consola que la consulta a BD se hace bien. Vi por ahi que jquery es mas elegido para estos casos algo intenté pero la funcion no anda me quedo asi



<script LANGUAGE="text/javascript">function rellena(a){	<!--



	var o , u	var valid1 = ^\d+$;	document.write("parametro"+a);



	document.write('<br>');	if (valid1.test(a.value)){



		<?php		include ("conecta.php");		



		$result = mysql_query("SELECT * FROM productos ", $link) or die("$sql <br>".mysql_error());		while ($row = mysql_fetch_array($result)){?>



			if (a.value == <?php echo $row['codigo'];?>) {				o = "<?php echo $row['descripcion'];?>";



				u = "<?php echo $row['precio'];?>";				break;



////Aca se asignan bien las variables			} 	<?php } ?>




	}else{		alert('Solo Numeros por favor...');	}



		documentgetElementById("descripcion").value = o;



	<script LANGUAGE="text/javascript">function rellena(a){	<!--



	var o
 , u	var valid1 = ^\d+$;	document.write("parametro"+a);



	document.write('<br>');	if (valid1.test(a.value)){



		<?php		include ("conecta.php");		



		$result =
 mysql_query("SELECT * FROM productos ", $link) or die("$sql <br>".mysql_error());		while ($row = mysql_fetch_array($result)){?>



			if (a.value == <?php echo $row['codigo'];?>) {				o = "<?php echo $row['descripcion'];?>";



				u = "<?php echo $row['precio'];?>";				break;



			} 	<?php } ?>	}else{



		alert('Solo Numeros por favor...');	}	



	$('#descripcion').val(o);	$('#precio').val(u);



}//--></script><script LANGUAGE="text/javascript">

function rellena(a){	<!--	var o , u	var valid1 = ^\d+$;



	document.write("parametro"+a);	document.write('<br>');	if (valid1.test(a.value)){



		<?php		include ("conecta.php");				$result = mysql_query("SELECT * FROM productos ", $link) or die("$sql <br>".mysql_error());



		while ($row = mysql_fetch_array($result)){?>			if (a.value == <?php echo $row['codigo'];?>) {



				o = "<?php echo $row['descripcion'];?>";				u = "<?php echo $row['precio'];?>";



				break;			} 	<?php } ?>	}else{



		alert('Solo Numeros por favor...');	}		$('#descripcion').val(o);



	$('#precio').val(u);}//--></script><script LANGUAGE="text/javascript">

function rellena(a){	<!--	var o , u	var valid1 = ^\d+$;



	document.write("parametro"+a);	document.write('<br>');	if (valid1.test(a.value)){



		<?php		include ("conecta.php");				$result = mysql_query("SELECT * FROM productos ", $link) or die("$sql <br>".mysql_error());



		while ($row = mysql_fetch_array($result)){?>			if (a.value == <?php echo $row['codigo'];?>) {



				o = "<?php echo
 $row['descripcion'];?>";				u = "<?php echo $row['precio'];?>";				break;



			} 	<?php } ?>	}else{		alert('Solo Numeros por favor...');



	}		documentgetElementById("descripcion").value = o;



	documentgetElementById("precio").value =
 o;///aca ya no se asigna nada}//--></script>Como veras estoy necesitando que los textbox descripcion y precio se completen dinamicamente, no saleeeeeee, ayudaaaaaa



Gracias


--- El jue 11-abr-13, Matias Gea <matigea en gmail.com> escribió:





De: Matias Gea <matigea en gmail.com>




Asunto: Re: [Php-avanzado] consulta javascript
Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar>




Fecha: jueves, 11 de abril de 2013, 4:15

Hola, Damián.
Los errores de sintaxis en el javascript generado son por que hacés asignaciones sin valor, por ej:


o.value = ;


Para evitarlo, deberías encerrar con comillas los valores:


if (a == '<?php echo $row["codigo"]; ?>') {
   o.value = '<?php echo $row["descripcion"]'; ?>
   u.value = '<?php echo $row["precio"]'; ?>






} 


Saludos!
El 10 de abril de 2013 23:34, Damián Colledani <damian_colledani en yahoo.com> escribió:








Genial Gracias!!! pero me sigue tirando la consola que no está definida la funcion. Evidentemente siguen los problemas de sintaxis que no veo





el Ctrl-u me da lo siguiente: y no lo se interpretar correctamente. Me lo explicas?
/////////////<script LANGUAGE="text/javascript">
function rellena(a){
	var o,u
			if (a == ) {
		o.value = ;
		u.value = ;
			
		} 
				if (a == ) {
		o.value = ;
		u.value = ;
			
		} 
			document.getElementById("descripcion").value = o.value;
	document.getElementById("precio").value = u.value;
}
</script>
Gracias
--- El mié 10-abr-13, Leonardo Tadei - Pegasus Tech Supply <leonardot en pegasusnet.com.ar> escribió:







De: Leonardo Tadei - Pegasus Tech Supply <leonardot en pegasusnet.com.ar>






Asunto: Re: [Php-avanzado] consulta javascript
Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar>




Fecha: miércoles, 10 de abril de 2013, 16:20



Hola Damián,

    el error se debe estar dando porque la función JS que generás en PHP
tiene errores de sintaxis.
    Para verlos, fijate en el código HTML generado (Ctrl+u) y ahí vas a ver






la función que te
 queda.
    Si no veo mal, las líneas adentro del if no terminan con ; en JS.
    También parece haber un error semántico, porque a las variables o,u les
asignás un valor como "value", pero después a los value de los elementos






DOM se las asignás sin el value.

    La función JS que veas en el fuente, la podés ejecutar en la consola
del navegador y ver qué arroja.

El mié, 10-04-2013 a las 06:54 -0700, Damián Colledani escribió:






> Disculpen la molestia pero la consola de error de navegador me da
> error y no me puedo dar cuenta cual es, si me ayudan les agradezco:
> 
> 
> /////////Funcion
> <script LANGUAGE="text/javascript">






> function rellena(a){
> var o,u
> var a
> <?php
> include ("conecta.php"); 
> $result = mysql_query("SELECT * FROM productos ", $link) or die("$sql
>
 <br>".mysql_error());
> while ($row = mysql_fetch_row($result)){?>
> if (a == <?php echo $row["codigo"]; ?>) {
> o.value = <?php echo $row["descripcion"]; ?>






> u.value = <?php echo $row["precio"]; ?>
> 
> } 
> <?php
> } ?>
> document.getElementById("descripcion").value = o;
> document.getElementById("precio").value = u;






> }
> </script>
> ////////la llamo asi
> <input type="text" id="codigo" name="codigo" size="10" value=""
> onchange="rellena(this.value)" />






> Gracias
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar






> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado

-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar






Web: http://leonardo.tadei.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key







_______________________________________________
Php-avanzado mailing list
Php-avanzado en pato2.fi.mdp.edu.ar
http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado







_______________________________________________

Php-avanzado mailing list

Php-avanzado en pato2.fi.mdp.edu.ar

http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado







-- 


Matias Fernando Gea
matigea en gmail.com
http://www.mfgea.com.ar


-----Adjunto en línea a continuación-----

_______________________________________________
Php-avanzado mailing list
Php-avanzado en pato2.fi.mdp.edu.ar




http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado


_______________________________________________



Php-avanzado mailing list

Php-avanzado en pato2.fi.mdp.edu.ar

http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado





-- 


Matias Fernando Gea
matigea en gmail.com
http://www.mfgea.com.ar


-----Adjunto en línea a continuación-----

_______________________________________________
Php-avanzado mailing list
Php-avanzado en pato2.fi.mdp.edu.ar


http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado


_______________________________________________

Php-avanzado mailing list

Php-avanzado en pato2.fi.mdp.edu.ar

http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado



-- 


Matias Fernando Gea
matigea en gmail.com
http://www.mfgea.com.ar


-----Adjunto en línea a continuación-----

_______________________________________________
Php-avanzado mailing list
Php-avanzado en pato2.fi.mdp.edu.ar
http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130413/37892d56/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: index.php
Type: application/octet-stream
Size: 3474 bytes
Desc: no disponible
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130413/37892d56/attachment-0001.obj>


Más información sobre la lista de distribución Php-avanzado