PHP - RECORRER UN ARREGLO EN UN IF

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

RECORRER UN ARREGLO EN UN IF

Publicado por SARA (67 intervenciones) el 05/12/2019 19:38:56
Buenas tardes, tengo el siguiente código el cual necesito que en la parte del IF me realice un comparativo de los datos del array obtenido en la $consulta con el numero 1, para que me pueda realizar las consulta especifica segun sea.

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
<?php
if ($conexión = mysql_connect("localhost", "root", "root1")){
echo " ";
 
mysql_select_db("bdcontratos");
 
$consulta = mysql_query("SELECT * FROM contratos WHERE idempleado = 5");
 
	$datosempl = mysql_query ($consulta);
	$filaempl= mysql_fetch_array ($datosempl);
 
 
    if($filaempl == '1'){
    $resultado = mysql_fetch_assoc($consulta);
 
        $consulta2 = "SELECT MAX(fechainicio) FROM contratos WHERE idempleado = 5 and reingreso = 1";
        mysql_query ($consulta2);
        $datos = mysql_query ($consulta2);
        $fila= mysql_fetch_array ($datos);
 
        echo $fila[0];
    }
    else{
        $consulta3 = "SELECT fechainicio FROM contratos WHERE idempleado = 5 and reingreso = 0 LIMIT 1";
        mysql_query ($consulta3);
        $datos1 = mysql_query ($consulta3);
        $fila1= mysql_fetch_array ($datos1);
 
        echo $fila1[0];
    }
}
else{
	echo "<p> Error de conexion</p>";
}
?>
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
Imágen de perfil de Lawliet
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por Lawliet (351 intervenciones) el 05/12/2019 19:57:31
Hola!!!

mysql_fetch_array() Te devuelve un arreglo en base a los registros que traes de la base de datos... Qué campo de tu base de datos vas a comparar con el 1 para poder hacer la validación?

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos! :3
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
sin imagen de perfil
Val: 78
Ha disminuido su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por SARA (67 intervenciones) el 05/12/2019 20:01:36
hola, si intente poner mysql_fetch_array() pero no me arroja el resultado correcto. El campo que quiero comparar se llama reingreso y solamente puede ser de valor 0 y 1.

1
2
3
4
5
6
7
$consulta = mysql_query("SELECT reingreso FROM contratos WHERE idempleado = 5");
 
$resultado = mysql_fetch_array($consulta);
 
 
if($resultado == '1'){
$resultado = mysql_fetch_assoc($consulta);
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 Lawliet
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por Lawliet (351 intervenciones) el 05/12/2019 20:21:40
Hola!!!

Realice algunas correcciones a tu código para que se vea un poco más limpio.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
	$conexión = @mysql_connect('localhost','root','root1') OR DIE ("Error de conexion: " . mysql_error());
	mysql_set_charset('utf8',$conexión);
	$db = mysql_select_db('bdcontratos',$conexión) OR DIE ("Error en la base de datos: " . mysql_error());
	$consulta = "SELECT * FROM contratos WHERE idempleado = 5";
	$datosempl = mysql_query($consulta);
	$filaempl = mysql_fetch_assoc($datosempl);
 
	if($filaempl['reingreso'] == '1') {
		$consulta2 = "SELECT MAX(fechainicio) FROM contratos WHERE idempleado = 5 and reingreso = 1";
		$datos = mysql_query($consulta2);
		$fila = mysql_fetch_array($datos);
		echo $fila[0];
	} else {
		$consulta3 = "SELECT fechainicio FROM contratos WHERE idempleado = 5 and reingreso = 0 LIMIT 1";
		$datos1 = mysql_query($consulta3);
		$fila1= mysql_fetch_array($datos1);
		echo $fila1[0];
	}
?>

Es importante mencionar que la extensión mysql fue declarada obsoleta en PHP 5.5.0 y eliminada en PHP 7.0.0. Por lo que debes utilizar en su lugar MySQLi o PDO.

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos! :3
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
sin imagen de perfil
Val: 78
Ha disminuido su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por SARA (67 intervenciones) el 05/12/2019 20:35:49
no me da el resultado requerido en este caso busco que me de la fecha de 19/10/2017 porque si existe el reingreso = 1, si no existiera reingreso = 1 seleccionaría la primer fecha.

Gracias por tus comentarios amiga voy a contemplar los comentarios.

5dd949a42ca60-re
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 Lawliet
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por Lawliet (351 intervenciones) el 05/12/2019 23:31:09
Hola!!!

El código que tienes solamente funciona para un registro, consideraba que solamente te traía un registro tu consulta pero ya vi que no. Para ese caso tienes que recorrer todo ese arreglo que te devuelve la consulta y dentro tener que hacer la validación como a continuación lo indico xD

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
	$conexión = @mysql_connect('localhost','root','root1') OR DIE ("Error de conexion: " . mysql_error());
	mysql_set_charset('utf8',$conexión);
	$db = mysql_select_db('bdcontratos',$conexión) OR DIE ("Error en la base de datos: " . mysql_error());
	$consulta = "SELECT * FROM contratos WHERE idempleado = 5";
	$datosempl = mysql_query($consulta);
	while($filaempl = mysql_fetch_assoc($datosempl)) {
		if($filaempl['reingreso'] == '1') {
			$consulta2 = "SELECT MAX(fechainicio) FROM contratos WHERE idempleado = 5 and reingreso = 1";
			$datos = mysql_query($consulta2);
			$fila = mysql_fetch_array($datos);
			echo $fila[0];
		}
	}
?>

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos! :3
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
sin imagen de perfil
Val: 78
Ha disminuido su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

RECORRER UN ARREGLO EN UN IF

Publicado por SARA (67 intervenciones) el 05/12/2019 23:35:54
no puedo ponerlo para una consulta porque dependiendo del dato de reingreso es como me arrojara el resultado, como por ejemplo en la imagen que te pase si en reingreso fuera toda la columna en 0 como me lo pasaste no me arroja nada, y en ese caso el resultado que me deberia de arrojar es el primer dato que seria 2015-08-18.
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