PHP - GENERACIÓN DE URL CON CARGA DE EXCEL PHP

 
Vista:
sin imagen de perfil

GENERACIÓN DE URL CON CARGA DE EXCEL PHP

Publicado por Juan Carlos (7 intervenciones) el 09/08/2016 14:58:38
Hola, como están.... estoy realizando una aplicación la cual genera URL, los datos los saco de un excel, todo lo hace perfecto lo único que falla es que en la url debe existir un numero autoincrementable, lo que hace es generar ese número por carga de excell...

Por ejemplo si tengo 10 filas en el excel a las 10 url que se generan le asigna el mismo número. y lo que debería hacer es un número distinto para cada fila .

Mi código

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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?php
include 'funciones/serv.php';
 
extract($_POST);
 
if ($action == "upload"){
 
	$origenValueId = $_POST["origenM"];
	$ubicacion = $_POST["ubicacionM"];
	$segmento = $_POST["segmentoM"];
	$userMasivo = $_POST["userMasivo"];
 
	$origenArray = explode("|",$origenValueId);
 
	$origen = $origenArray[1];
	$origen_id = $origenArray[0];
	$valor2 = $origenArray[2];
	$newValues = $origenArray[3];
	$gato = "&";
    $igual = "=";
 
 
	if($segmento=="Seleccione"){
		$segmento="";
	}
	if($ubicacion=="Seleccione"){
		$ubicacion="";
	}
	if($origen=="Seleccione"){
		$origen="";
	}
 
		if($valor2==""){
			$gato="";
		}
    if($newValues==""){
      $igual="";
     }
 
 
$archivo = $_FILES['excel']['name'];
$tipo = $_FILES['excel']['type'];
$destino = "bak_".$archivo;
 
if (copy($_FILES['excel']['tmp_name'],$destino)) echo '<div style="font-family:arial; font-size:20px; font-weight:bold; text-align:center; margin-top:20%; color:#666;">
Archivo guardado exitosamente</div>';
 
else echo '<div style="font-family:arial; font-size:20px; font-weight:bold; text-align:center; margin-top:20%;">
Error al cargar el archivo</div>';
 
////////////////////////////////////////////////////////
 
if (file_exists ("bak_".$archivo)){
 
/** Clases necesarias */
 
require_once('PHPExcel-1.8/Classes/PHPExcel.php');
 
require_once('PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007.php');
 
// Cargando la hoja de cálculo
 
$objReader = new PHPExcel_Reader_Excel2007();
 
$objPHPExcel = $objReader->load("bak_".$archivo);
 
$objFecha = new PHPExcel_Shared_Date();
 
// Asignar hoja de excel activa
 
$objPHPExcel->setActiveSheetIndex(0);
 
// Llenamos el arreglo con los datos  del archivo xlsx
 
$contar = $objPHPExcel->setActiveSheetIndex(0)->getHighestRow();
 
 
 
for ($i=1;$i<=$contar;++$i){
 
$_DATOS_EXCEL[$i]['sku'] = $objPHPExcel->getActiveSheet()->getCell('A'.$i)->getCalculatedValue();
$_DATOS_EXCEL[$i]['descripcion'] = $objPHPExcel->getActiveSheet()->getCell('B'.$i)->getCalculatedValue();
$_DATOS_EXCEL[$i]['informacion'] = $objPHPExcel->getActiveSheet()->getCell('C'.$i)->getCalculatedValue();
$_DATOS_EXCEL[$i]['url_original']= $objPHPExcel->getActiveSheet()->getCell('D'.$i)->getCalculatedValue();
 
 
}
 
}
 
//si por algo no cargo el archivo bak_
 
else{echo "Necesitas primero importar el archivo";}
 
$errores=0;
 
//recorremos el arreglo multidimensional
 
//para ir recuperando los datos obtenidos
 
//del excel e ir insertandolos en la BD
 
	$queryNumeroMaximo = "SELECT MAX(numero)+1 AS numero_max FROM camp;";
	$resultQueryNumeroMaximo = mysql_query($queryNumeroMaximo) or die(mysql_error());
 
			if(is_resource($resultQueryNumeroMaximo) and mysql_num_rows($resultQueryNumeroMaximo)>0){
				$row = mysql_fetch_array($resultQueryNumeroMaximo);
				$numero_max = $row["numero_max"];
			}
 
 
foreach($_DATOS_EXCEL as $campo => $valor){
 
	 $sku = $valor['sku'];
	 $informa = $valor['descripcion'];
	 $descripcion = $valor['informacion'];
	 $original = $valor['url_original'];
 
	// echo "sku =".$sku."<br>";
	// echo "Desc =".$descripcion."<br>";
	// echo "numero_max =".$numero_max."<br>";
	// echo "original =".$original."<br>";
 
	$original_final = $original."".$sku."?".$origen_id."=".$segmento."".$ubicacion."".$numero_max."&".$valor2."=".$newValues;
 
// echo "Original =".$original."<br>";
 
// die();
 
 
$sql = "INSERT INTO camp VALUES ('$origen','$ubicacion','$segmento','".$valor['informacion']."','".$valor['descripcion']."','".$valor['url_original']."','".$original_final."','$userMasivo','".date("Y-m-d")."','','$numero_max')";
 
 // echo $sql."<br>";
 
 $result = mysql_query($sql);
 
if (!$result){ echo "Error al insertar registro ".$campo;$errores+=1;}
 
}
echo "<script>

 window.location.href = 'http://'+document.domain+'/marc-omniture/marc-omniture/inicio.php';

</script>";
 
// alert('ARCHIVO IMPORTADO CON EXITO, EN TOTAL $campo REGISTROS Y $errores ERRORES');
 
unlink($destino);
 
header('Location: inicio.php');
 
 
}
 
?>


Muchas gracias..
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 Jose Luis León López

GENERACIÓN DE URL CON CARGA DE EXCEL PHP

Publicado por Jose Luis León López (12 intervenciones) el 20/08/2016 19:30:57
me paerece que siempre eesta sumando uno al maximo numero de registros del exel y el maximo numero de registros es comun para todo el exel puedes hacer un contador que vaya contando el registro que estas leyendo y sumarlo en vez de sumar 1 sumas el contador que se va a ir incrementando con cada registro
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