elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Mensajes
Páginas: 1 2 3 [4] 5
31  Programación / PHP / Re: Login php con clases y ajax en: 10 Junio 2019, 00:55 am
¿Qué problema estás encontrando?
32  Programación / PHP / Re: Restar dos campos de tablas diferentes y hacer gráfico en: 3 Junio 2019, 18:36 pm
Sí, es con un SELECT... aunque dudo que puedas sacar toda esa información con una sola consulta.

Algo que podrias hacer para obtener una totalización es:

Código:
SELECT SUM(total) FROM ingresos WHERE fechaingreso BETWEEN '2019-01-01' AND '2019-04-01';

Por otro lado, siendo una estructura tan sencilla, te recomendaría tener una sola tabla de movimientos (no hace falta una de ingresos y otra de egresos)
33  Programación / PHP / Re: Inicio sesión que redirija a una página u otra en: 3 Junio 2019, 18:30 pm
El chequeo y la eventual redirección deben ir en check-login.php (Antes de enviar HTML al cliente)
34  Programación / PHP / [APORTE]: Cómo tratar con código ajeno y carente de documentación en: 22 Mayo 2019, 15:24 pm
Hola amigos!

  Les dejo el link a mi último screencast donde aprenderán cómo trabajar con una aplicación PHP que no desarrollaron ustedes mismos y que no tiene documentación:



  Que lo disfruten!!
35  Programación / PHP / Re: arrays con select multiple en: 24 Abril 2019, 16:47 pm
Es un poco difícil leer el código así... te recomiendo para empezar usar nombres de variables algo más descriptivos.

Copié tu código tal cual está y me da un error en la línea

Código:
if($respb[$x1a] == $_POST['p2ap[$x1a]']){$selected = ' selected';}

Nada grave, podrías ocultarlo usando @ (Aunque no te lo recomiendo).

Para hacerlo funcionar tuve que hacerle algunas modificaciones, la versión ejecutable es:

Código:
<?php

$respb=array('Siempre','Casi siempre','Casi nunca','Nunca','');

$regcue=7; //este varia segun un select de una bd

@$p2ap1=array();
?>
<form method="post">
<?php
for($x1 = 0; $x1 < $regcue; $x1++)
{
   echo '<td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" >';
   for($x1a = 0; $x1a < count($respb); $x1a++)
  {
     echo '<option value="'.$respb[$x1a].'"'.( array_key_exists( 'p2ap[$x1a]', $_POST ) && $respb[$x1a] == $_POST['p2ap[$x1a]'] ? 'selected' : '').'>'.$respb[$x1a].'</option>';
  }
  echo '</select>';
  @$p2v=$p2ap[$x1];
  array_push($p2ap1,$p2v);
}

echo " <td><input type='submit' name='botonenv' value='Continuar a la parte 3'/>";
?>
</form>
<?php
if (@$_POST['botonenv']=='Continuar a la parte 3')
{
     print_r($p2ap1);
}

  Y ahí sí me da la salida que dices:

Código:
Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => )

El problema es que todos los select tienen el mismo nombre... si ves el código HTML generado verás esto:

Código:
<select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select><td><select name="p2ap[$x1]" value="$p2ap[$x1]" class="form-control" ><option value="Siempre">Siempre</option><option value="Casi siempre">Casi siempre</option><option value="Casi nunca">Casi nunca</option><option value="Nunca">Nunca</option><option value=""></option></select>

  Esto sucede por las comillas (simples) que usas para generar el nombre (y el value) del select.

  Me falta algo de info para darte una versión completamente funcional, pero creo que con esto tendrás una base para avanzar:

Código:
<?php

$respb=array('Siempre','Casi siempre','Casi nunca','Nunca','');

$regcue=7; //este varia segun un select de una bd

@$p2ap1=array();
?>
<form method="post">
<?php
for($x1 = 0; $x1 < $regcue; $x1++)
{
   echo '<td><select name="p2ap['.$x1.']" value="'.$p2ap[$x1].'" class="form-control" >';
   for($x1a = 0; $x1a < count($respb); $x1a++)
  {
     echo '<option value="'.$respb[$x1a].'"'.( array_key_exists( 'p2ap['.$x1.']', $_POST ) && $respb[$x1a] == $_POST['p2ap['.$x1.']'] ? 'selected' : '').'>'.$respb[$x1a].'</option>';
  }
  echo '</select>';
  @$p2v=$p2ap[$x1];
  array_push($p2ap1,$p2v);
}

echo " <td><input type='submit' name='botonenv' value='Continuar a la parte 3'/>";
?>
</form>
<?php
if (@$_POST['botonenv']=='Continuar a la parte 3')
{
     print_r($p2ap1);
}
36  Programación / PHP / Re: como modificar el valor de un array ? en: 22 Abril 2019, 21:41 pm
Lo mejor para estos casos es utilizar un debugger (Xdebug por ejemplo).

Si lo usas en combinación con algún IDE (NetBeans, PHPStorm, etc...) lo resolverás rápidamente.

Te dejo un video que puede ayudarte.

Saludos
37  Programación / PHP / Re: ordenar tabla en: 21 Abril 2019, 00:07 am
Lo que necesitas es agregar al final de tu SQL una cláusula de ordenamiento.

En lugar de:

Código:
$sql="SELECT * from personas";

Algo como:

Código:
$sql="SELECT * from personas ORDER BY nombre";

Combinando con la respuesta de @srWhitSkull lo que harías sería algo como:

Código:
$orden = in_array( $_GET['ordenar'], [ 'id', 'nombre', 'genero' ] ) ? $_GET['ordenar'] : 'id'; // Por seguridad

$sql="SELECT * from personas ORDER BY $orden";

Saludos
38  Programación / PHP / Re: Problema al enviar un correo con mail() en: 15 Abril 2019, 17:09 pm

Usar mail es igual de efectivo y recomendable siempre y cuando este el servidor smtp configurado.

Saludos

No estoy muy de acuerdo. Puede que usando SMTP puedas solucionar algunos problemas relacionados con la seguridad, ahora, en cuanto a la facilidad de uso y eficiencia se queda bastante atrás... enviar correos con adjuntos usando mail es un tema por ejemplo, usando Swift o alguna otra librería no.

Incluso, si usás un servicio de envíos al que se accede vía API podés hacer algo mucho más eficiente... No estoy seguro de qué capacidades tiene mail para, por ejemplo, hacer uso de pools de conexiones a un SMTP (Imagino que ninguna).

En fin, mail puede ser una solución quick-and-dirty, pero si necesitás algo más escalable te conviene mirar para otro lado
39  Programación / PHP / Re: Problema al enviar un correo con mail() en: 13 Abril 2019, 22:47 pm
Genial. En general igual no es muy bueno usar la funcion mail... aca podes ver algunas opciones
40  Programación / PHP / Re: ayuda con frameworks en: 13 Abril 2019, 20:45 pm
Esta semana terminé de dar un curso de Symfony donde vimos ese tema.

Si te interesa participar de la próxima edición contáctame.

Saludos
Páginas: 1 2 3 [4] 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines