Thanks for answer,
Basically, I've got 3 nestle queries,
Query 1 Gets Deparment
Query 2 Gets Extension (for every department)
Query 4 Gets calls calls duration and cost for every extension
This is just code (queries) for Wampserver 2.5 run slow:
$con = mysqli_connect("localhost","root","password","calls"
;
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$query1 = "SELECT departament ".
"FROM departaments ".
"ORDER BY departaments.departament ";
$result1 = mysqli_query($con,$query1) or die(mysql_error());
while($row1 = mysqli_fetch_assoc($result1))
{
//Do query2
$query2 = "SELECT * ".
"FROM estructura ";
"ORDER BY estructura.Ext ";
$result2 = mysqli_query($con,$query2) or die(mysql_error());
//Loop Query2
while($row2 = mysqli_fetch_assoc($result2))
{
//Do Query4
$query4 = "SELECT iva.iva, registro.Ext, estructura.responsable, tarifas.numero, registro.duracion, tarifas.destino, tarifas.costo AS CostoX, estructura.departament, registro.numero, registro.Nombrenumero, registro.tipodestino, registro.TipoLlam, registro.duracionpbx, registro.fecha, registro.hora, ((registro.duracion*tarifas.costo)+ cargobase) AS Total ".
"FROM registro , estructura , tarifas, iva ".
"WHERE registro.Ext = estructura.Ext AND registro.IdLlam = tarifas.IdLlam AND registro.TipoLlam = '$Direccion' AND registro.tipodestino LIKE '$tipodestinof%' AND fecha BETWEEN '$calendar8M' AND '$calendar9M' AND hora BETWEEN '$horaini' AND '$horafin' AND registro.numero LIKE '$numerob%' AND registro.duracionpbx >= '$duracionbf' ORDER BY estructura.Ext, fecha, hora ";
$result4 = mysqli_query($con,$query4) or die(mysql_error());
// Print out the contents of each row into a table
while($row4 = mysqli_fetch_assoc($result4))
{
//Si estructura.Ext = registro.Ext
if ($row1['departament'] == $row2['departament'])// AND $row2['tipodestino '] == $row3['tipodestino'])
{
if ($row2['Ext'] == $row4['Ext'])
{
echo $row4['Ext'];
echo $row4['duracionpbx'];
echo $row4['Total'];
} //Close If Si estructura.Ext = registro.Ext
} //Close If Si departament = departament
} //Close Query4
}//Close Query2
}//Close Query1
This is just code (queries) for Wampserver 2.0b run faster:
$con = mysql_connect("localhost","root","password"
;
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("calls", $con);
//Do query1
$query1 = "SELECT departament ".
"FROM departaments ".
"ORDER BY departaments.departament ";
$result1 = mysql_query($query1) or die(mysql_error());
while($row1 = mysql_fetch_array($result1))
{
//Do Query2
$query2 = "SELECT * ".
"FROM estructura ";
"ORDER BY estructura.Ext ";
$result2 = mysql_query($query2) or die(mysql_error());
//Loop Query2
while($row2 = mysql_fetch_array($result2))
{
//Do Query4
$query4 = "SELECT iva.iva, registro.Ext, estructura.responsable, tarifas.numero, registro.duracion, tarifas.destino, tarifas.costo, estructura.departament, registro.numero, registro.Nombrenumero, registro.tipodestino, registro.TipoLlam, registro.duracionpbx, registro.fecha, registro.hora, ((registro.duracion*tarifas.costo)+ cargobase) AS Total ".
"FROM registro , estructura , tarifas, iva ".
"WHERE registro.Ext = estructura.Ext AND registro.IdLlam = tarifas.IdLlam AND registro.TipoLlam = '$Direccion' AND registro.tipodestino LIKE '$tipodestinof%' AND fecha BETWEEN '$calendar8M' AND '$calendar9M' AND hora BETWEEN '$horaini' AND '$horafin' AND registro.numero LIKE '$numerob%' AND registro.duracionpbx >= '$duracionbf' ORDER BY estructura.Ext, fecha, hora ";
$result4 = mysql_query($query4) or die(mysql_error());
// Print out the contents of each row into a table
while($row4 = mysql_fetch_array($result4))
{
//Si estructura.Ext = registro.Ext
if ($row1['departament'] == $row2['departament'])// AND $row2['tipodestino '] == $row3['tipodestino'])
{
if ($row2['Ext'] == $row4['Ext'])
{
echo $row4['Ext'];
echo $row4['duracionpbx'];
echo $row4['Total'];
} //Close If Si estructura.Ext = registro.Ext
} //Close If Si departament = departament
} //Close Query4
any ideas?