
Mostrar multiples registros del mismo empleado
Publicado por Alberto (9 intervenciones) el 16/03/2023 22:44:07
Tengo mi siguiente codigo para editar una plantilla de excel y convertirla a PDF la cual se llena con informacion extraida de mi base de datos mi problema es que mi plantilla es un examen en el cual la columna I se deben mostrar las respuestas ingresadas por el empleado cuando realizo el examen en linea.
Mi problema es que cuando extraigo la respuesta en todas las preguntas me pone la misma respusta ya que me esta tomando como referencia la ultima respuesta ingresada por el empleado, lo que quiero saber o si me pueden orientar es como puedo mostrar todas las respuestas que obtengo con la siguiente consulta.

Edit.php
Este es el codigo que uso para la modificacion y conversion de la plantilla del examen Se que me toma el ultimo registro por que en columna B5 extraigo la fecha del examen y me pone la del ultimo registro.
Este es mi resultado al ejecutar el php

Mi problema es que cuando extraigo la respuesta en todas las preguntas me pone la misma respusta ya que me esta tomando como referencia la ultima respuesta ingresada por el empleado, lo que quiero saber o si me pueden orientar es como puedo mostrar todas las respuestas que obtengo con la siguiente consulta.
1
SELECT * FROM mst_useranswer,empleados WHERE idaso = 253415 AND test_id = 1 AND codigo_persona = 253415 ORDER BY que_id ASC;

Edit.php
Este es el codigo que uso para la modificacion y conversion de la plantilla del examen Se que me toma el ultimo registro por que en columna B5 extraigo la fecha del examen y me pone la del ultimo registro.
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
<?php
require 'vendor/autoload.php';
require 'conexion.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$sql = "SELECT * FROM mst_useranswer,empleados WHERE idaso = 253415 AND test_id = 1 AND codigo_persona = 253415 ORDER BY que_id ASC";
$resultado = $mysqli->query($sql);
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader("Xlsx");
$path ='Examen.xlsx';
$spreadsheet = $reader->load($path);
$sheet = $spreadsheet->getActiveSheet();
while($rows = $resultado->fetch_assoc()){
$sheet->setCellValue('B5', $rows['date']);
$sheet->setCellValue('G4', $rows['Nombre']);
$sheet->setCellValue('G5', $rows['codigo_persona']);
$sheet->setCellValue('I10', $rows['your_ans']);
$sheet->setCellValue('I14', $rows['your_ans']);
$sheet->setCellValue('I18', $rows['your_ans']);
$sheet->setCellValue('I22', $rows['your_ans']);
$sheet->setCellValue('I26', $rows['your_ans']);
$sheet->setCellValue('I30', $rows['your_ans']);
$sheet->setCellValue('I34', $rows['your_ans']);
$sheet->setCellValue('I38', $rows['your_ans']);
$sheet->setCellValue('I42', $rows['your_ans']);
$sheet->setCellValue('I46', $rows['your_ans']);
$sheet->setCellValue('I49', '10');
$sheet->setCellValue('C52', $rows['Nombre']);
$sheet->setCellValue('D53', 'SI');
$sheet->setCellValue('I53', 'NO');
$namefile = $rows['codigo_persona'];
}
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, "Mpdf");
$pdf_path = "$namefile.pdf";
//$writer->save($pdf_path);
//$writer->save('Hostel_.xlsx');
if (!file_exists('files')) {
mkdir('files', 0755);
}
$writer->save('files/'.$pdf_path);
$dir = 'files/';
$new_name_file = $dir . $pdf_path;
$ins = $mysqli->query("INSERT INTO files(title,description,url) VALUES ('','','$new_name_file')");
if ($ins) {
echo 'success';
} else {
echo 'fail';
}
?>
Este es mi resultado al ejecutar el php

Valora esta pregunta


0