[PHP] Problema stringa numerica

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
mork_1
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 380
Iscrizione: venerdì 28 gennaio 2011, 17:32
Desktop: Gnome
Distribuzione: Ubuntu 22.04 LTS
Sesso: Maschile

[PHP] Problema stringa numerica

Messaggio da mork_1 »

Salve a tutti, vi illustro velocemente la situazione perché non so come venirne a capo e il lavoro è lavoro :\

Da una pagina php faccio una query al mio server (lavoro in locale, quindi sul mio pc) e in una delle righe dei risultati c'è una voce del tipo (testualmente) "34--1".
Per stampare i risultati della query uso $row=mysql_fetch_array($result) e faccio scorrere il vettore con un for. La cosa procede bene e funziona tranne nel caso suddetto dove c'è una voce di quel tipo e si osserva che la pagina va in palla (dal browser), inizia a stampare campi non richiesti seppure io imponga dal codice $row['campo1']. Infatti, $row['campo1'] inizia a stampare anche quello che c'è in campo2, campo3 e così via.

Non capisco come possa succedere.
Ho provato a correggere quel tipo di dato eliminando "--" usando str_replace, ma non va lo stesso.


Edit

La tabella è stata importata da un file .csv e mi sono accorto che il problema sorge laddove in qualche campo la delimitazione dei campi (scusate il gioco di parole) non è stata fatta bene e l'elemento separatore dei campi (che in questo caso è "|", ossia il pipe ) è rimasto!
Ultima modifica di mork_1 il giovedì 28 aprile 2016, 21:18, modificato 1 volta in totale.
"..il cielo stellato sopra di me e la legge morale dentro di me" (Immanuel Kant)

" Nosce te ipsum" (Socrate)
Avatar utente
pgcor
Prode Principiante
Messaggi: 208
Iscrizione: mercoledì 11 novembre 2015, 18:11

Re: PHP - Problema stringa numerica

Messaggio da pgcor »

Prova a postarci il codice interessato ;)

Edit: quindi hai risolto?
Un ente intrinsecamente dipendente ne richiede uno assolutamente indipendente. A tutti quelli che hanno la vocazione di avere solo ragione... e di essere accecati dai propri vizi: prima o poi arriverete a Canossa. Prego per voi che avvenga prima. | Ubuntu Touch non è morto Gruppo Ubuntu Touch ModDB
mork_1
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 380
Iscrizione: venerdì 28 gennaio 2011, 17:32
Desktop: Gnome
Distribuzione: Ubuntu 22.04 LTS
Sesso: Maschile

Re: [PHP] Problema stringa numerica

Messaggio da mork_1 »

Ciao pgcor,

a quanto pare non c'erano errori nel codice PHP, bensì la tabella importata aveva qualche errore, di cui sconosco la genesi.
In pratica ho un database enorme che splitto da terminale in più pezzi (tutti in .csv), ciascuno di dimensioni intorno ai 50 MB. Li importo dunque su phpmyadmin con l'apposita funzione, selezionando con cura il pipe al posto della virgola come elemento separatore.

In teoria questo problema dunque non dovrebbe esistere, perché phpmyadmin dovrebbe dividere correttamente le varie righe secondo i vari campi riconoscendoli dai pipe. Ma a volte non succede. Come mai?

Scusate se sto andando volontariamente OT.
"..il cielo stellato sopra di me e la legge morale dentro di me" (Immanuel Kant)

" Nosce te ipsum" (Socrate)
Avatar utente
pgcor
Prode Principiante
Messaggi: 208
Iscrizione: mercoledì 11 novembre 2015, 18:11

Re: [PHP] Problema stringa numerica

Messaggio da pgcor »

Purtroppo non so risponderti :nono: scusa :D
Fosse stato un problema di php avrei potuto aiutarti (forse :sisi:)
Un ente intrinsecamente dipendente ne richiede uno assolutamente indipendente. A tutti quelli che hanno la vocazione di avere solo ragione... e di essere accecati dai propri vizi: prima o poi arriverete a Canossa. Prego per voi che avvenga prima. | Ubuntu Touch non è morto Gruppo Ubuntu Touch ModDB
Avatar utente
eaghezzi
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 725
Iscrizione: martedì 21 luglio 2009, 10:27
Desktop: Lubuntu
Distribuzione: Ubuntu 14.04.1 LTS i686
Sesso: Maschile
Località: Valleambrosia

Re: [PHP] Problema stringa numerica

Messaggio da eaghezzi »

come consiglio generale ti suggerisco di tenere tutti i "pezzi" in db mysql e importare/esportare con phpMyadmin o con tuoi script in php direttamente tra un db e l'altro.
se proprio devi passare dai csv php ha delle ottime funzioni csv, con poche righe di codice puoi farti tu le routine di import export hai sicuramente un maggior controllo.

per passare da un db all'altro ti consiglio di usare l'istruzione mysql select insert...into è molto veloce, meglio che i cicli in php.
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti