Problema con simple funcion PHP

Iniciado por Vaagish, 1 Febrero 2014, 23:21 PM

0 Miembros y 1 Visitante están viendo este tema.

Vaagish

Hola amigos,, estoy teniendo un problema que al parecer no tiene mucho sentido,, pego el código:

Código (php) [Seleccionar]

    while($row = mysqli_fetch_assoc($Result))
    {

$output_string = $row['ip'].",".$row['NombrePC'].",".$row['SO'].",".$row['Pais']."|";

    }   



el problema es que quiero concatenar $output_string con $output_string,, lo mas lógico seria poner un . delante de =

Así:

Código (php) [Seleccionar]

$output_string .= $row['ip'].",".$row['NombrePC'].",".$row['SO'].",".$row['Pais']."|";


Lo raro es que en otra maquina, con otra versión de PHP si funciona!! La base de datos esta correcta, y todo lo demás esta bien.. (repito, en otra versión de PHP funciona)

Alguien tiene otra forma de concatenar la informacion de la base de datos en un string??? tiene que tener este formato: dato1, dato2, dato3, dato4|dato1, dato2, dato3, dato4|

Saludos!!

engel lex

que tal si hacer un

Citarprint_r($row);

para ver si está retornando el valor deseado... no es logico que no funcione...
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

Vaagish

Citarprint_r($row);

El otro problema es que ese código php se llama desde ajax,, no puedo imprimir nada en ese php,, pongo el código:


Código (php) [Seleccionar]
function DBRead(){
$.ajax({
    url: 'getdata.php',
type:'POST',
    dataType: 'json',
        success: function(output_string){
console.log(output_string);
}

#!drvy

Si devuelves json con el php utiliza json_encode(); en vez de hacerlo tu mismo.

Código (php) [Seleccionar]

$output = array();
while($row = mysqli_fetch_assoc($Result)){
 $output[] = $row;
}

$output = json_encode($output);
echo $output;


http://es1.php.net/manual/es/function.json-encode.php

Para concatenar, la variable debe estar previamente declarada, si no, tira error.
Otra forma de concatenar es utilizar la propia variable.

Código (php) [Seleccionar]
$output_string = $output_string.'bla bla'.'blabla';

PD: Tema movido a PHP

Saludos


Toxico

Cita de: Vaagish en  2 Febrero 2014, 04:05 AM
El otro problema es que ese código php se llama desde ajax,, no puedo imprimir nada en ese php,, pongo el código:


Código (php) [Seleccionar]
function DBRead(){
$.ajax({
    url: 'getdata.php',
type:'POST',
    dataType: 'json',
       success: function(output_string){
console.log(output_string);
}



Hola, sea o no AJAX si se puede imprimir desde php, tienes que ver que la respuesta no sea un failure desde el server, prueba a realizar lo siguiente:

1.- Abre tu pagina en chrome
2.- presiona f12 para ver la consola
3.- dirigete al tab network y busca la URL a la que haces referencia en tu solicitud AJAX y verifica lo que devuelve.
4.- No te olvides dar las gracias  ;D

Te pego +- como debería verse  que estas buscando.



Si en otra instalacion de PHP estaba funcionando pues puede ser que el driver de mysql no este habilitado, primero verifica que te devuelve el network.

Saludos
solo el principio....


Vaagish

CitarPara concatenar, la variable debe estar previamente declarada, si no, tira error.

Naaa... me olvidaba de eso... Solucionado..

Citardirigete al tab network y busca la URL a la que haces referencia en tu solicitud AJAX y verifica lo que devuelve.

No me sale igual que esa imagen,, sale asi:



Igual, era la falta de iniciar la variable...

CitarNo te olvides dar las gracias

Muchas gracias a todos!!  ;-)