PHP - cambiar sintaxis mysqli y otras para que funcione este script

 
Vista:
Imágen de perfil de Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

cambiar sintaxis mysqli y otras para que funcione este script

Publicado por Eduardo (179 intervenciones) el 12/04/2024 18:41:11
Buenos días, espero me puedan ayudar, estoy tratando de pasar este código usando mysqli y todas esas extensiones, he comentado las que estaban en el formato obsoleto y allí puesto las nuevas, (si me podrían echar una manito ya que hay una que php al parecer saco mysql_field_name la cual no se (veo en la documentación pero no se como cambiarla y que me funcione) si notan algo raro me ayudan por favor a corregir.... ya que loq ue hace este codigo es exportar en excel la consulta (ante sme funcionaba pero ahora con los cambios de php no)

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
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Reporte Bascula Fecha: ".$Newfecha1." A ".$Newfecha2." Placa ".$placa.".xls");
  $mysqli = new mysqli('localhost', 'usuario', 'contrasena', 'basededatos');
 
 
  $query = $mysqli -> query ("SELECT * FROM servicios_grua WHERE fechainicial_servicio BETWEEN '$fecha22w' AND '$fecha33w' AND placapro_servicio='".$placa."' ORDER BY fechainicial_servicio ASC");
 
 
//$campos = mysql_num_fields($qry);
$campos = mysqli_num_fields($query);
//$total = mysql_num_rows($qry);
$total = mysqli_num_rows($query);
//$i=1;
$i=0;
echo "<table border=1><tr>";
echo "<td colspan='11'><center><b>Reporte Excel :  ".$Newfecha1." A ".$Newfecha2." PLACA ".$placa."</center></b></td>";
echo "</tr>";
while($i<$campos){
echo "<td><center><b>".strtoupper(mysql_field_name($qry,$i));
echo "</center></b></td>";
$i++;
}
echo "</tr>";
//while($row=mysql_fetch_array($qry)){
while($row=mysqli_fetch_array($qry)){
echo "<tr>";
//for($j=1; $j<$campos; $j++){
for($j=0; $j<$campos; $j++) {
//echo "<td>".utf8_decode($row[$j])."</td>";
echo "<td>".rtrim(utf8_decode($row[$j]), ", ")."</td>";
}
echo "</tr>";
}
echo "</table>";
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 Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

cambiar sintaxis mysqli y otras para que funcione este script

Publicado por Eduardo (179 intervenciones) el 13/04/2024 01:43:21
Hola y gracias por responder.. ya He realizado el cambio con el que sale en la documentación pero me sigue sin funcionar ya eso lo había consultado igual las que usé en el ejemplo que posteo.
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 Eduardo Arroyo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

cambiar sintaxis mysqli y otras para que funcione este script

Publicado por Eduardo Arroyo (179 intervenciones) el 14/04/2024 02:44:50
Bueno aca dejo la solucion POR SI ALGUIEN LA NECESITA ( SE TRATA DE ESTO ESTE FORO CIERTO) Funciona perfecto


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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
header("Pragma: public");
header("Expires: 0");
$filename = "nombreArchivoQueDescarga.xls";
header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=$filename");
header("Pragma: no-cache");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
$placa=$_GET['placa'];
$fecha1=$_GET['fecha1'];
$fecha2=$_GET['fecha2'];
$tipy=$_SESSION['tipo'];
$conexion=new mysqli('localhost', 'usuario', 'contrasena', 'basededatos');
	if(mysqli_connect_errno()){
		echo 'Conexion Fallida : ', mysqli_connect_error();
		exit();
	}
// cambias el nombre de la tabla y las indicaciones luego del where segun tu necesidad
$consulta = "SELECT * FROM tabla WHERE fechainicial_servicio BETWEEN '$fecha1' AND '$fecha2' AND placapro_servicio='".$placa."' ORDER BY fechainicial_servicio ASC";
		$resultado=$conexion->query($consulta);
		$hay = $resultado->num_rows;
		//echo $hay;
$mostrar = array();
while($registro = mysqli_fetch_assoc($resultado) ) {
 $mostrar[] = $registro;
}
 
mysqli_close($conexion);
 
?>
<h4>REPORTE FECHA:  <?php echo "$fecha1" ?> A <?php echo "$fecha2" ?> VEHICULO <?php echo "$placa" ?></h4>
<div class="well-sm col-sm-12">
 <div class="btn-group pull-right"></div>
 </div>
 
 <table width="100%" border="1" cellpadding="0" cellspacing="0" class="table table-striped table-bordered">
 <tr>
 <th>CAMPO 1</th>
 <th>CAMPO 2</th>
 <th>CAMPO 3</th>
 <th>CAMPO 4</th>
 <th>CAMPO 5</th>
 <th>CAMPO 6</th>
 <th>CAMPO 7</th>
 <th>CAMPO 8</th>
 <th>CAMPO 9</th>
 <th>CAMPO 10</th>
 <th>CAMPO 11</th>
 <th>CAMPO 12</th>
 <th>CAMPO 13</th>
 <th>CAMPO 14</th>
 </tr>
 <tbody>
 <?php
foreach($mostrar as $most) {
// cambian el nomnbre campo 1, 2, 3 por las cedlas de su tabla a mostrar
?>
 <tr>
 <td class=xl65 ><?php echo $most ['campo1']; ?></td>
 <td><?php echo $most ['campo2']; ?></td>
 <td><?php echo $most ['campo3']; ?></td>
 <td><?php echo $most ['campo4']; ?></td>
 <td><?php echo $most ['campo5']; ?></td>
 <td><?php echo $most ['campo6']; ?></td>
 <td><?php echo $most ['campo7']; ?></td>
 <td><?php echo $most ['campo8']; ?></td>
 <td><?php echo $most ['campo9']; ?></td>
 <td><?php echo $most ['campo10']; ?></td>
 <td><?php echo $most ['campo11']; ?></td>
 <td><?php echo $most ['campo12']; ?></td>
 <td><?php echo $most ['campo13']; ?></td>
 <td><?php echo $most ['campo14']; ?></td>
 </tr>
 <?php } ?>
 </tbody>
 </table>


adiocionalmente este estilo hace que un numero pasado a excel lo haga como dacena ya que el numero lo recortaba por el formato excel (primer juego de campo 1)

1
2
3
4
5
6
7
<style type="text/css">
.xl65
 {
 mso-style-parent:style0;
 mso-number-format:"\@";
 }
</style>
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