Foros del Web » Programando para Internet » PHP »

Fallo en codigo, ayuda please

Estas en el tema de Fallo en codigo, ayuda please en el foro de PHP en Foros del Web. Hice este codigo para actualizar los datos de una tabla con los de otra: Código PHP: <?php //-----------------------DO NOT EDIT BELOW THIS LINE!----------------------------------      $db_host    =  $_POST [ 'hostDB' ]; ...
  #1 (permalink)  
Antiguo 05/02/2009, 09:53
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 2 meses
Puntos: 0
Fallo en codigo, ayuda please

Hice este codigo para actualizar los datos de una tabla con los de otra:

Código PHP:
<?php
//-----------------------DO NOT EDIT BELOW THIS LINE!----------------------------------

    
$db_host   $_POST['hostDB'];
    
$db_user   $_POST['userDB']; 
    
$db_pass   $_POST['passDB']; 
    
$db_db   $_POST['DB'];
    
$currentid   0;
    
$finishid   $_POST['finishID'];
$connection mysql_connect($db_host,$db_user,$db_pass);

$Tr   

////////////////////////////////////////////////////////////////////////////////////////
$currentid   $currentid 1;
if (
$currentid == $finishid 1)

{

die(
'Traducción completada con éxito');



else 

{


$query 'SELECT entry, name, description FROM eses_item';
if (
$r mysql_query($query,$connection))
        {
while (
$row mysql_fetch_array($r))
{if (
$currentid == $row['entry']) 
{echo 
"Good";
                        
                                        
$query  "UPDATE items SET name1 = $row['name'] WHERE entry = '$row['entry']'";
mysql_query($query) or die('Error, query failed');

$query  "UPDATE items SET name2 = $row['description'] WHERE entry = '$row['entry']'";
mysql_query($query) or die('Error, query failed');

$sql_text1 'SELECT * FROM items';
mysql_query($sql_text1,$connection) or die(mysql_error());
      }
    }
  }
};
////////////////////////////////////////////////////////////////////////////////////////

str_repeat($Tr$finishid)
?>
Las variables:
Código PHP:
    $db_host   $_POST['hostDB'];
    
$db_user   $_POST['userDB']; 
    
$db_pass   $_POST['passDB']; 
    
$db_db   $_POST['DB'];
    
$finishid   $_POST['finishID']; 
Son definidas externamente desde otro archivo.

Pero me devuelve este error:
Código:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\wamp\www\DB\Items_Done.php on line 37
Si alguien me ayudara se lo agradeceria eternamente

P.D: ¿Que puedo hacer para que si la entry 1 por ejemplo no existe repita el codigo con la entry 2?
  #2 (permalink)  
Antiguo 05/02/2009, 10:48
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Fallo en codigo, ayuda please

Las variables que pones entre comillas dobles es mejor que vayan entre llaves. Cuando insertas un elemento de un array, éste debe ir entre llaves o en todo caso sin las comillas simples:

Código PHP:
$query  "UPDATE items SET name1 = '$row[name]' WHERE entry = '{$row['entry']}'"
Un saludo,
  #3 (permalink)  
Antiguo 05/02/2009, 11:45
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Fallo en codigo, ayuda please

Muchas gracias, problema solucionado :D :D :D, ahora solo me queda una duda.
Por alguna razon no se repite la variable $Tr la cual esta puesta para repetirse unas 38000 veces en el otro archivo; la web no devuelve ningun error, pero de repetirse tantas veces el codigo tardaria a cargar en vez de salir al instante.

No se porque falla

Código PHP:
<?php
//-----------------------DO NOT EDIT BELOW THIS LINE!----------------------------------

    
$db_host   $_POST['hostDB'];
    
$db_user   $_POST['userDB']; 
    
$db_pass   $_POST['passDB']; 
    
$db_db   $_POST['DB'];
    
$currentid   0;
    
$finishid   $_POST['finishID'];
$connection mysql_connect($db_host,$db_user,$db_pass);

mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_db) or die('No se puede conectar a la DB');

$Tr   

////////////////////////////////////////////////////////////////////////////////////////
$currentid   $currentid 1;
if (
$currentid == $finishid 1)

{

die(
'Traducción completada con éxito');



else 

{


$query 'SELECT entry, name, description FROM eses_item';
if (
$r mysql_query($query,$connection))
        {
while (
$row mysql_fetch_array($r))
{if (
$currentid == $row['entry']) 
{echo 
"Good";
                        
mysql_select_db($db_db) or die('No se puede conectar a la DB');                                        
$query  "UPDATE items SET name1 = '$row[name]' WHERE entry = '{$row['entry']}'";
mysql_query($query) or die('Error, query failed');
mysql_select_db($db_db) or die('No se puede conectar a la DB');
$query  "UPDATE items SET name2 = '$row[description]' WHERE entry = '{$row['entry']}'";
mysql_query($query) or die('Error, query failed');
mysql_select_db($db_db) or die('No se puede conectar a la DB');
$sql_text1 'SELECT * FROM items';
mysql_query($sql_text1,$connection) or die(mysql_error());
      }
    }
  }
}
////////////////////////////////////////////////////////////////////////////////////////
;
str_repeat(eval($Tr), $finishid)
?>
Para que se repitiera $Tr puse esto:
Código PHP:
str_repeat(eval($Tr), $finishid

Última edición por eilex; 05/02/2009 a las 11:59
  #4 (permalink)  
Antiguo 05/02/2009, 16:49
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Fallo en codigo, ayuda please

Lo que necesito es que se repita este script n veces:

Código PHP:
$currentid   $currentid 1
if (
$currentid == $finishid 1



die(
'Traducción completada con éxito'); 

}  

else  




$query 'SELECT entry, name, description FROM eses_item'
if (
$r mysql_query($query,$connection)) 
        { 
while (
$row mysql_fetch_array($r)) 
{if (
$currentid == $row['entry'])  
{echo 
"Good"
                         
mysql_select_db($db_db) or die('No se puede conectar a la DB');                                         
$query  "UPDATE items SET name1 = '$row[name]' WHERE entry = '{$row['entry']}'"
mysql_query($query) or die('Error, query failed'); 
mysql_select_db($db_db) or die('No se puede conectar a la DB'); 
$query  "UPDATE items SET name2 = '$row[description]' WHERE entry = '{$row['entry']}'"
mysql_query($query) or die('Error, query failed'); 
mysql_select_db($db_db) or die('No se puede conectar a la DB'); 
$sql_text1 'SELECT * FROM items'
mysql_query($sql_text1,$connection) or die(mysql_error()); 
      } 
    } 
  } 

Gracias por cualquier ayuda
  #5 (permalink)  
Antiguo 05/02/2009, 18:15
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Fallo en codigo, ayuda please

Busca y lee sobre funciones en php. Así, podrás meter ese código en una función y llamar a esa función N veces.

  #6 (permalink)  
Antiguo 06/02/2009, 08:38
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Fallo en codigo, ayuda please

Muchas gracias por todo, el codigo ya esta terminado, os explico lo que hice por si os puede servir:

Cogi el script que queria que se repitiera y mediante una variable que iva aumentando se repetia hasta llegar al numero que defini en $finishid

Código PHP:
<?
For ($Currentid=0;$Currentid<=$Finishid;$Currentid++)
{
  
////////////////////
 //////SCRIPT////////
////////////////////
}
?>

Un saludo :D

Última edición por eilex; 07/02/2009 a las 09:12
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:53.