[Php-avanzado] consulta javascript

Matias Gea matigea en gmail.com
Vie Abr 12 11:51:15 ART 2013


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<http://mc/compose?to=damian_colledani@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<http://mc/compose?to=matigea@gmail.com>
> >* escribió:
>
>
> De: Matias Gea <matigea en gmail.com <http://mc/compose?to=matigea@gmail.com>
> >
>
> Asunto: Re: [Php-avanzado] consulta javascript
> Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar<http://mc/compose?to=php-avanzado@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<http://mc/compose?to=damian_colledani@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<http://mc/compose?to=leonardot@pegasusnet.com.ar>
> >* escribió:
>
>
> De: Leonardo Tadei - Pegasus Tech Supply <leonardot en pegasusnet.com.ar<http://mc/compose?to=leonardot@pegasusnet.com.ar>
> >
> Asunto: Re: [Php-avanzado] consulta javascript
> Para: "Lista del curso de PHP Avanzado" <php-avanzado en pato2.fi.mdp.edu.ar<http://mc/compose?to=php-avanzado@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://mc/compose?to=Php-avanzado@pato2.fi.mdp.edu.ar>
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
> --
> Leonardo Tadei
> leonardot en pegasusnet.com.ar<http://mc/compose?to=leonardot@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://mc/compose?to=Php-avanzado@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://mc/compose?to=Php-avanzado@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://mc/compose?to=matigea@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://mc/compose?to=Php-avanzado@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://mc/compose?to=Php-avanzado@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://mc/compose?to=matigea@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://mc/compose?to=Php-avanzado@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
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130412/77c6b040/attachment-0001.html>


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