[PHP]Far riconoscere stringa o numerico epr creazione campo tabella

Monital

Utente Attivo
15 Apr 2009
778
2
18
Ho un un problemino che non riesco a trovar soluzione o meglio ci ho provato con is_numeric ed is_int ma non mi riesce
Ho creato la funzione qui sotto per crearmi una tabella nel db estraendo i dati da un file dove la prima riga($multi[0]) sono i campi della tabella.

come posso far riconoscere quando un campo è da mettere mediumint o varchar?

considerando che solo da dalla seconda riga ho ida ti e non so come far riconoscere la riuga in base alla colonna

non so se mi sono spiegato

es
riga 1-----nome cognome telefono(sarebbe multi[0])
riga 2------antonio pippo 55555(da $multi[1] in poi)

quindi dovrebbe verificare che alla riga 2 del campo x di $multi[0] trova un valore numerico o stringa
PHP:
function prova($file,$table_stat,$primary1){

$textfile = file($file);
    for($x=0;$x<count($textfile);$x++){
        $multi[]=explode("\t",$textfile[$x]);
    }

    if(check_if_table_exists("".$table_stat."",$db) == true){
        echo "Il database è già esistente";
        exit;
    }

    $campi=$multi[0];

        $query="CREATE TABLE  ".$table_stat."
                (";
    foreach($campi as $value){
        
        
                
        $query.=$value. " mediumint(8) NULL,";
    }
        $query.="PRIMARY KEY (".$primary1.")
                )";

$db->query($query);

    }

    return $multi;
}

suggerimenti
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
potresti provare con preg_match per vedere se è composto di soli numeri, però attento i numeri di telefono NON sono numeri devi trattarli come stringa, esempio se forzi ad intero il telefono 0232589245 (prefisso milano) il risultato è 232589245
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao
potresti provare con preg_match per vedere se è composto di soli numeri, però attento i numeri di telefono NON sono numeri devi trattarli come stringa, esempio se forzi ad intero il telefono 0232589245 (prefisso milano) il risultato è 232589245

ciao borgo ben ritrovato, no non sono numeri telefonici,era per farmi capire,
per la colonna (campo) telefono al 100% estraggo sempre numeri, glia ltri campi alcuni si alcuni no.

però dato che la creazione delle tabelle sono in un ciclo devo far capiure che solo quel campo nel db mysql deve mettermelo int e gli altri varchar
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
non sapevo nemmeno che esistesse, a breve la provo e so dirti, che mi son impiantato
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
miè venuto in mente
prova questo schema

PHP:
<?php
//.......
if(preg_match("/[09]/", $valore)){
   $q.= $nome_campo." INT(16) ";//la stringa è composta di soli numeri
}else{
   $q.= $nome_campo." VARCHAR(50) ";
}
//............
?>
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
sei un grande, non ho parole, e senza volerlo mi hai risolto anche il problema che si è presentato su una tabella perchè superava i limiti,essendo molto grande, dato in quanto avevo impostato tutto varchar,giusto epr andare avanti intanto

SANTO SUBITO!!!!!
 
Discussioni simili
Autore Titolo Forum Risposte Data
W [PHP] Come far funzionare un form di selezione PHP 12
M [PHP] Far rimanere biffata checkbox dopo aggiornamento pagina PHP 24
Bryan [PHP] Far mostrare tutte le tabelle contenenti in un database PHP 2
C [PHP] DEVO FAR SPUNTARE SOLO LE CONSONANTI DI UNA STRINGA PHP 1
SimooRu [PHP] Non riesco a far passare i dati con i form PHP 4
G Ciclo if php per far comparire un pulsante solo nel caso in cui una variabile sia 0 PHP 2
M Far partire una funzione/codice php con javascript Javascript 1
Mr. Alex D. Come far apparire un testo preimpostato in una casella di un form di uno script php? PHP 1
G Come far passare un valore attraverso il metodo POST utiliazzando PHP a jQuery PHP 4
P Problema: come far leggere unintero dvd da php e memorizzare il suo contenuto ???? PHP 38
T [PHP] inserire un file pdf da poter far scaricare... PHP 22
T Come far interagire pulsanti e codice php? PHP 1
S come far parlare javascript e php Ajax 1
G Come far fare redirect al form mail in php PHP 3
G come si fa a far girare le pagine PHP su Apache? PHP 1
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5

Discussioni simili