Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/09/2011, 16:21
equality_211085
 
Fecha de Ingreso: septiembre-2009
Ubicación: Managua
Mensajes: 128
Antigüedad: 17 años, 2 meses
Puntos: 5
Respuesta: ERROR: unterminated quoted string at or near

Hola Andres

Cita:
No sé como se están generando esos 2 arrays, pero el error lo que dice es que tienes error de sintaxis en la consulta y puede ser porque no le estás agregando las comillas a los valores. Si son cadenas coloca comillas sencillas.
Los arrays los genero de los nombres de los campos del form que como mencione corresponden a los de las campos en mi tabla

Código PHP:
$array_fields[$i] // lo genero de aqui

foreach ($_POST as $key => $value) {
        
$campos  .= $key . ',';
        
$valores .= $value . "','";
} 
luego en la llamada a la funcion updateRegister le paso esas cadenas

Código PHP:
updateRegister('articulo', $campos, $valores, $_REQUEST['idarticulo']); 
Finalmente las cadenas las convierto en esos dos array que decis en la funcion

Código PHP:
function updateRegister ($table, $fields, $values, $id) {
    
$odbc = connect();
    
$array_fields = explode(",", $fields); // AQUI CONVIERTO LAS CADENAS EN ARRAY
    
$array_values = explode(",", $values);

    for (
$i=0; $i < count($array_fields); $i++) {
        
$result = pg_query("UPDATE $table SET $array_fields[$i] = $array_values[$i] WHERE id" . $table . " = " . $id);
    }
    if (!
$result) {
        echo 
'Hubo un error';
        exit();
    }
} 
con lo de las comillas ya las coloco al momento de crear las cadenas que convierto a array.

Código PHP:
// Justamente aca
$valores = "'";
    foreach (
$_POST as $key => $value) {
        
$campos  .= $key . ',';
        
$valores .= $value . "','";
    } 
Gracias, Alguna otra sugerencia?