Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/04/2008, 15:23
dcalvache
 
Fecha de Ingreso: abril-2008
Mensajes: 1
Antigüedad: 16 años, 1 mes
Puntos: 0
fallo con php 5.2

Tengo el siguiente codigo......
El caso es que me funciona perfectamente con PHP 5.1 y con PHP5.2 no me va.(tanto en linux como en windows)

search.php

<?
$URL = 'http://10.0.0.1/';
$per_page = '10';

$mysql_conn = mysql_connect('localhost', 'root', '');
mysql_select_db('test', $mysql_conn );


if ( ($FROM=='') and ($TO=='') )
{
//check to see how many
$result= mysql_query("SELECT count(phones.fname) as total
FROM phones
WHERE phones.fname LIKE '$NAME%' ", $mysql_conn);
$howmany = mysql_fetch_row($result);

if ($howmany[0] > $per_page)
{
$start = 0;
$total = $howmany[0];
$remain = $per_page;

print("\n");
print("<ThomsonPhoneMenu>\n");

while ($start < ($total + 1))
{
$limitstart = 'LIMIT '.$start.','.$per_page;
$result = mysql_query("SELECT fname,phone
FROM phones
WHERE fname LIKE '$NAME%' ORDER BY fname $limitstart", $mysql_conn);

$row = mysql_fetch_row($result);
$from = $row[0];
if (($total - $start) < $per_page) { $remain = $total - $start; }
for ($i = 1; $i < $remain; ++$i) { $row = mysql_fetch_row($result); }
$to = $row[0];

print("<MenuItem>\n");
print("\t<Name>");
print($from."->".$to);
print("</Name>\n");
print("\t<URL>");
print($URL."search.php?FROM=".$from."&amp;TO=".$to );
print("</URL>\n");
print("</MenuItem>\n");

$start = $start + $per_page;
}
print("</ThomsonPhoneMenu>\n");

} else {

$result = mysql_query("SELECT fname,lname,phone
FROM phones
WHERE phones.fname LIKE '$NAME%'
ORDER BY fname ", $mysql_conn);

print("\n");
print("<ThomsonPhoneBook>\n");

while($row = mysql_fetch_row($result))
{
print("<DirectoryEntry>\n");
print("\t<Name>");
print($row[0].", ".$row[1] );
print("</Name>\n");
print("\t<Telephone>");
print($row[2]);
print("</Telephone>\n");
print("</DirectoryEntry>\n");
}
print("</ThomsonPhoneBook>\n");
}


} else {

$result = mysql_query("SELECT fname,lname,phone
FROM phones
WHERE fname>='$FROM' AND fname<='$TO'
ORDER BY fname", $mysql_conn);

print("\n");
print("<ThomsonPhoneBook>\n");

while($row = mysql_fetch_row($result))
{
print("<DirectoryEntry>\n");
print("\t<Name>");
print($row[0].", ".$row[1] );
print("</Name>\n");
print("\t<Telephone>");
print($row[2]);
print("</Telephone>\n");
print("</DirectoryEntry>\n");
}
print("</ThomsonPhoneBook>\n");
}


?>

Este codigo deberia buscarme en una base de datos todos aquellos registros que empezaran por una palabra determinada, por ejemplo: David

La llamada se haria de la siguiente manera:

http://IP/search.php?NAME=david :
donde search.php se corresponde al anterior codigo arriba expuesto.

El caso es que por ejemplo con un precocinado como APpserv 2.55 funciona (es decir me devuelve solo los valores que ami me interesan) y con el ultimo xampp(5.2) o con una instalacion a pelo en debian etch con apache 2 y php5 (php 5.2) no funciona (es decir me devuelve todos los valores de la tabla).



Os estaria muy agradecido si me ayudais a ver la solucion, ya que no soy experto en LAMP,(No soy programador), y es de vital importancia.


Gracias de antemano.