[MySQL] Sostituire valori campi con dati casuali

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Buongiorno a tutti,
ho una tabella di un database strutturata in questo modo:

Codice:
CREATE TABLE `appuntamenti` (
  `id_app` int(11) NOT NULL,
  `cliente` varchar(50) DEFAULT NULL,
  `gestore` varchar(50) DEFAULT NULL,
  `veicolo` varchar(20) DEFAULT NULL,
  `data` date DEFAULT NULL,
  `ora` varchar(10) DEFAULT NULL,
  `tlav` int(11) NOT NULL,
  `stato_pren` varchar(50) DEFAULT NULL,
  `tipo_pren` varchar(50) NOT NULL,
  `tipo_lavorazione` varchar(30) NOT NULL,
  `telefono` varchar(50) DEFAULT NULL,
  `note` longtext,
  `email` varchar(50) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

la tabella contiene 2664 record, avrei la necessità di sostituire i valori contenuti nel campo `telefono` con valori casuali, in sostanza devo inserire dei numeri telefonici inventati, la stessa cosa dovrei fare per il campo `cliente` che contiene un nome e cognome

Spero anzitutto di aver scritto nella sezione corretta e se cosi non fosse mi scuso anticipatamente

Grazie
 

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Ho provato in questo modo, ma non funziona, anche perchè a me immagino serva una query di update e non insert :(

PHP:
<?php

// BLOCCO CODICE CONNESSIONE DATABASE
$host = 'localhost';
$user = 'user';
$pass = 'password';
$db = 'database';

$mysqli = new mysqli("$host", "$user", "$pass", "$db");

$insert_rows = 2664; //il numero di righe che vogliamo inserire

$abc= array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"); // per generare nomi random
$num= array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9"); // per generare numeri random

// supponiamo che hai una tabella 'rubrica' coi campi 'id', 'nome', 'telefono'

for ($i=0; $i<$insert_rows; $i++)
{
   $cliente=''; // azzeriamo il nome
   $telefono=''; // azzeriamo il telefono

   $cliente_long1 = rand(5,10); // la lunghezza del nome in modo random, tra 5 e 10 lettere
   $cliente_long2 = rand(6,12); // la lunghezza del cognome in modo random, tra 6 e 12 lettere

   for($j=0;$j<$cliente_long1;$j++){ $cliente .= $abc[rand(0,count($abc)-1)]; } //genera il nome
   $cliente .= ' '; //aggiunge uno spazio
   for($j=0;$j<$cliente_long2;$j++){ $cliente .= $abc[rand(0,count($abc)-1)]; } //genera il cognome

   for($j=0;$j<10;$j++){ $telefono .= $num[rand(0,count($num)-1)]; } // genera il telefono di 10 cifre

   mysqli_query ("insert into appuntamenti ('id_app','cliente','gestore','veicolo','data','ora','tlav','stato_pren','tipo_pren','tipo_lavorazione','telefono','note','email') values ('','".ucwords($cliente)."','".$gestore."','".$veicolo."','".$data."','".$ora."','".$tlav."','".$stato_pren."','".$tipo_pren."','".tipo_lavorazione."','".$telefono."','".$note."','".$email."'"); // la query dell'insert
}

?>
 

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Ciao Borgo Italia,
hai compreso perfettamente la mia esigenza. I dati esistono già in tabella, saresti cosi gentile da postarmi la parte da modificare per trasformare lo script da insert ad update ?

P.S
Un altra cosa, vorrei far in modo che i numeri di telefono di 10 caratteri inizino per 3

Grazie mille per la disponibilità
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova qualcosa del genere, comunque verifica i vari nomi campi e tabella che ho messo, devi mettere i tuoi, verifica anche la varie lunghezze nome e telefono se sono quelle che ti servono
PHP:
<?php
function nome(){//genera un nome cognome casuale
    $nome_lungo=rand(5,8);
    $conome_lungo=rand(6,10)-1;
    $tot=$nome_lungo+$conome_lungo;
    $nome_cognome="";
    for($k=0; $k<$tot;$k++){
        if($k!=$nome_lungo){
            $nome_cognome.=chr(rand(97,122));//genera casuale abc....xyz
        }else{
            $nome_cognome.=" ";//divide nome da cognome
        }
    }
    return ucwords($nome_cognome);// da aaaa bbbbb a Aaaa Bbbbb
}
function telefono(){//genera numero tel casuale che inizia per 3
    $telefono="";
    for($k=0;$k<9;$k++){ $telefono.=rand(0,9);}    //genera casuale 9 cifre
    return "3".$telefono;//inizia per 3
}

//dati di connessione

$query_1="SELECT id FROM utenti ORDER BY id";
$ris_1=mysqli_query($conn, $queryi);
while($riga=mysqli_fetch_assoc($ris_1)){
    $id=(int)$riga['id'];
    $query_2="UPDATE utenti SET nome='".nome()."', telefono='".telefono()."' WHERE id=".$id;
    $ris_2=mysqli_query($conn, $query_2);
}
//ecc quello che poi ti serve
?>
 
Discussioni simili
Autore Titolo Forum Risposte Data
Shyson [MySQL] Sostituire testo in in articolo MySQL 0
M Sostituire le funzioni mysql con mysqli, ma quali? PHP 4
K form Inserimento record mysql PHP 2
P Mysql lento a cancellare MySQL 1
P Codifica caratteri speciali mysql php PHP 0
N MAX() + ADD_DATE - per update su Mysql MySQL 0
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
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
W MySQL ciclo in SELECT MySQL 0
L Mysql gestionale multipiattaforma MySQL 0
W MySQL SELECT list dinamica MySQL 0
M utilizzo mysql in nodejs - crea createdAt e updateAt MySQL 1
T colonne di tabelle mysql ordinate MySQL 0
M Sintassi "personalizzata" per mysql workbench? MySQL 0
A Mysql MySQL 0
F Ricreare struttura php+mysql su Xampp Apache 0
M Array associativi php su 2 campi mysql PHP 10
Z Controllo giorni MYSQL PHP 0
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
L Mysql: Nascondere le pagine dopo una ricerca PHP 1
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
S problema con recupero dati tabella mysql PHP 2
E Progressbar estrazione dati da tabella mySQL Ajax 9
Z MySql injection PHP PHP 1
D controllare valore in tabella mysql PHP 0
A pulsante di update campo mysql con javascript Javascript 2
R Tutto su utf-8 ma ancora problemi con i caratteri speciali in mysql MySQL 1
T differenza fra mysql xampp e un mysql server Database 0
R Importazione csv su mysql tramite array PHP 2
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
D problema php mysql PHP 1
D problema php mysql PHP 1
N Server mysql non raggiungibile da connessione esterna MySQL 1
B Crea pdf da tabella mysql "ultima riga modificata" MySQL 4
D evitare di inserirre duplicati in mysql PHP 4
L salvare codice html in mysql PHP 3
L Google chart php mysql PHP 2
S Gestire scelta dropdown con dati da Mysql PHP 2
K cron job mysql PHP 3
elpirata Query per leggere dati da una tabella mysql e mostrarli a video in base a parametri passati tramite GET PHP 5
R Errore UPDATE tabella mysql PHP 1
R Caricamento immagine su cartella remota + mysql PHP 3
D Emoji in mysql Database 0
L Aiuto per programma web php/mySQL PHP 2
S Problema esportazione tabelle Mysql in Excel PHP 0
S Cancellare una riga MYSQL PHP 1
L Ricerca valore mysql e incremento PHP 73

Discussioni simili