• Home
  • Forum
  • Hosting, Server e Sistemi
  • Database
  • MySQL

Insert non inserirsce tutti i valori

  • Creatore Discussione Creatore Discussione Antonio102
  • Data di inizio Data di inizio 29 Ott 2014
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 29 Ott 2014
  • #1
Ciao a tutti, ho un piccolo problema con una INSERT. Devo inserire tutti e 20 i nomi delle regioni italiane dentro la tabella regioni, ma anziche' 20 ne vengono inseriti solo 19 (manca la Valle d'Aosta). Credo che il problema stia nel codice di escape in Valle d'Aosta, ma non capisco come modificarlo

PHP:
<?php
$regioni = array('Valle d\'Aosta','Piemonte','Liguria','Lombardia','Trentino-Alto Adige','Veneto','Friuli-Venezia Giulia','Emilia-Romagna','Toscana','Umbria','Marche','Lazio','Abruzzo','Molise','Campania','Puglia','Basilicata','Calabria','Sicilia','Sardegna');

$capoluoghi = array('Aosta','Torino','Genova','Milano','Trento','Venezia','Trieste','Bologna','Firenze','Perugia','Ancona','Roma','L\'Aquila','Campobasso','Napoli','Bari','Potenza','Catanzaro','Palermo','Cagliari');

foreach ($regioni as $regions)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$insert = mysqli_query($conn,"INSERT INTO regioni (id,regione) VALUES ('','$regions')");
}
if ($insert === TRUE)
echo "Records created successfully";
else 
echo "Error: " . $insert . "<br>" . $conn->error;
$conn->close();
?>
 
Ultima modifica: 29 Ott 2014

HolidaySoft.it

Utente Attivo
16 Ott 2012
105
0
0
Milano
www.holidaysoft.it
  • 30 Ott 2014
  • #2
Ciao,
prova a sostituire
'Valle d\'Aosta',

con

'Valle d''Aosta',

quindi un "singolo apice", con due "singolo apice", occhio non il doppio apice --> "

Ciao
Michele


A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 30 Ott 2014
  • #3
HolidaySoft.it ha scritto:
Ciao...
Clicca per allargare...

Perfetto, ora funziona.

Sto provando ad inserire dei dati dentro un altro database chiamato 'customers', composto da 6 campi: id, name, address, city, cap, country. Voglio inserire i dati di 10 clienti, ma con il codice seguente inserisce primi i nomi, poi gli indirizzi, etc, ma non inserisce i dati relativi ad un singolo cliente tutti nello stesso record. Come posso risolvere?

PHP:
<?php

$name = array('Alfreds Futterkiste','Ana Trujillo Emparedados','Antonio Moreno Taqueria','Around the Horn','Berglunds snabbkop','Blauer See Delikatessen','Blondel pere et fils ','Bolido Comidas preparadas','Bon app','Bottom-Dollar Marketse');

$address = array('Obere Str. 57','Avda. de la Constitucion 2222','Mataderos 2312','120 Hanover Sq.','Berguvsvagen 8','Forsterstr. 57','24, place Kleber','C/ Araquil, 67','12, rue des Bouchers','23 Tsawassen Blvd');

$city = array('Berlin','Mexico D.F.','Mexico D.F.','London','Lulea','Mannheim','Strasbourg','Madrid','Marseille','Tsawassen');

$cap = array('12209','05021','05023','WA1 1DP','S-958 22','68306','67000','28023','13008','T2F 8M4');

$country = array('Germany','Mexico','Mexico','UK','Sweden','Germany','France','Spain','France','Canada'); 

foreach ($name as $names)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$namess = mysqli_real_escape_string($conn,$names);
$insert = mysqli_query($conn,"INSERT INTO customers (id,name) VALUES ('','$namess')");
}

foreach ($address as $k=>$addresses)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$addressess = mysqli_real_escape_string($conn,$addresses);
$insert = mysqli_query($conn,"INSERT INTO customers (id,address) VALUES ('','$addressess')");
}

foreach ($city as $cities)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$citiess = mysqli_real_escape_string($conn,$cities);
$insert = mysqli_query($conn,"INSERT INTO customers (city) VALUES ('$citiess')");
}

foreach ($cap as $caps)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$capss = mysqli_real_escape_string($conn,$caps);
$insert = mysqli_query($conn,"INSERT INTO customers (cap) VALUES ('$capss')");
}

foreach ($country as $countries)
{
$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);
$countriess = mysqli_real_escape_string($conn,$countries);
$insert = mysqli_query($conn,"INSERT INTO customers (country) VALUES ('$countriess')");
}

$conn->close();
?>
 

HolidaySoft.it

Utente Attivo
16 Ott 2012
105
0
0
Milano
www.holidaysoft.it
  • 31 Ott 2014
  • #4
Ciao,
non so perchè i dati sono contenuti in array.... avrai i tuoi buoni motivi... ma credo che nel tuo caso dovresti utilizzare degli array multidimensionali, vedi questo esempio: http://goo.gl/CXpbdo

Ciao
Michele


A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 31 Ott 2014
  • #5
HolidaySoft.it ha scritto:
Ciao,
non so perchè i dati sono contenuti in array.... avrai i tuoi buoni motivi... ma credo che nel tuo caso dovresti utilizzare degli array multidimensionali, vedi questo esempio: http://goo.gl/CXpbdo
Clicca per allargare...

e' un esercitazione, non sono dati che vanno online, utilizzo per gli array per esercizio

ho scritto nuovamente il codice, per ottengo questo errore

PHP:
Error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Dollar Marketse,23 Tsawassen Blvd,Tsawassen,T2F 8M4,Canada)' at line 1

lo script e' questo

PHP:
<?php

$person = array(
    array('name' => 'Alfreds Futterkiste', 'address' => 'Obere Str. 57', 'city' => 'Berlin', 'cap' => '12209', 'country' => 'Germany'),
    array('name' => 'Ana Trujillo Emparedados', 'address' => 'Avda. de la Constitucion 2222', 'city' => 'Mexico D.F.', 'cap' => '05021', 'country' => 'Mexico'),
	array('name' => 'Antonio Moreno Taqueria', 'address' => 'Mataderos 2312', 'city' => 'Mexico D.F.', 'cap' => '05023', 'country' => 'Mexico'),
	array('name' => 'Around the Horn', 'address' => '120 Hanover Sq.', 'city' => 'London', 'cap' => 'WA1 1DP', 'country' => 'UK'),
	array('name' => 'Berglunds snabbkop', 'address' => 'Berguvsvagen 8', 'city' => 'Lulea', 'cap' => 'S-958 22', 'country' => 'Sweden'),
	array('name' => 'Blauer See Delikatessen', 'address' => 'Forsterstr. 57', 'city' => 'Mannheim', 'cap' => '68306', 'country' => 'Germany'),
	array('name' => 'Blondel pere et fils', 'address' => '24, place Kleber', 'city' => 'Strasbourg', 'cap' => '67000', 'country' => 'France'),
	array('name' => 'Bolido Comidas preparadas', 'address' => 'C/ Araquil, 67', 'city' => 'Madrid', 'cap' => '28023', 'country' => 'Spain'),
	array('name' => 'Bon app', 'address' => '12, rue des Bouchers', 'city' => 'Marseille', 'cap' => '13008', 'country' => 'France'),
	array('name' => 'Bottom Dollar Marketse', 'address' => '23 Tsawassen Blvd', 'city' => 'Tsawassen', 'cap' => 'T2F 8M4', 'country' => 'Canada'));

$conn= mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);

foreach ($person as $people)
{
$names['name'] = mysqli_real_escape_string($conn,$people['name']);
$addressess['address'] = mysqli_real_escape_string($conn,$people['address']);
$citiess['citiess'] = mysqli_real_escape_string($conn,$people['city']);
$capss['capss'] = mysqli_real_escape_string($conn,$people['cap']);
$countriess['countriess'] = mysqli_real_escape_string($conn,$people['country']);
$insert = mysqli_query($conn,"INSERT INTO customers (id,name,address,city,cap,country) VALUES ('',$names[name],$addressess[address],$citiess[citiess],$capss[capss],$countriess[countriess])");
}

if ($insert === TRUE)
echo 'Province inserite con successo'.'<br>';
else 
echo 'Error: '. $insert . '<br>' . $conn->error;

$conn->close();
?>
 

HolidaySoft.it

Utente Attivo
16 Ott 2012
105
0
0
Milano
www.holidaysoft.it
  • 31 Ott 2014
  • #6
Ciao,
direi che non hai inserito gli apici per i campi di tipo testo

Michele


A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 31 Ott 2014
  • #7
Sono riuscito ad inserire tutti i record. Ora tramite select count vorrei estrapolare il numero di ordini effettuati da un utente a mia scelta, ottengo un errore, ma non viene visualizzato quale

PHP:
<?php

$conn = mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);

$select = mysqli_query($conn,"SELECT COUNT(customerid) AS number FROM orders WHERE customerid=7");

if ($select === TRUE)
{
$data=mysql_fetch_row($select);
echo $data['number'];
}
else 
echo 'Errore: '.mysqli_error($conn);

$conn->close();

?>
 
Ultima modifica: 31 Ott 2014

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 3 Nov 2014
  • #8
Non è un errore. In realtà non entra nella condizione if($select === TRUE) perché appunto è diverso da true.
Guarda nel manuale: la variabile $select ora contiene i dati che tu hai chiesto e non true.
Al massimo puoi scrivere la condizione in questo modo:
PHP:
if ($select != FALSE)
In quanto (come dice il manuale) $select avrà valore false in caso di fallimento della query.
 
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 5 Nov 2014
  • #9
sempre tendando di estrapolare il numero di ordini effettuati da ogni singolo acquirente, riscontro degli errori

PHP:
<?php

$conn = mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error);

echo '<table border="1">';

for ($i=1;$i<20;$i++)
{
$select = mysqli_query($conn,"SELECT COUNT(customerid) FROM orders WHERE customerid={$i}");
while($row = mysqli_fetch_assoc($select))
{
echo $row[$i];
}
}

mysqli_free_result($select);

$conn->close();

?>

PHP:
Notice: Undefined offset: 0 in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\projects\esercizipreesame\numeroordini.php on line 12
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 7 Nov 2014
  • #10
Per estrapolare il numero di ordini effettuati da ogni singolo utente basta fare:
PHP:
<?php 

$conn = mysqli_connect('127.0.0.1','root','','preesame') or die("Connection failed: " . $conn->connect_error); 

echo '<table border="1">'; 

$select = mysqli_query($conn,"SELECT COUNT(*) as n_ordini, customerid FROM orders GROUP BY (customerid)"); 
while($row = mysqli_fetch_assoc($select)) 
{ 
echo $row["customerid"]." ha effettuato ".$row["n_ordini"]." ordini"; 
} 

mysqli_free_result($select); 

$conn->close(); 

?>

Ci potrebbero essere degli errori perché non l'ho testato.
Fammi sapere.
 
A

Antonio102

Utente Attivo
12 Set 2014
36
0
6
  • 8 Nov 2014
  • #11
Problema risolto, pero' ho un altra domanda. E' possibile raggruppare queste 3 query in una sola

PHP:
$pant = mysqli_query($conn,"SELECT COUNT(tipo) FROM adidas WHERE tipo='pantalone'");
	$scarpe = mysqli_query($conn,"SELECT COUNT(tipo) FROM adidas WHERE tipo='scarpe'");
	$maglie = mysqli_query($conn,"SELECT COUNT(tipo) FROM adidas WHERE tipo='t-shirt'");
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 9 Nov 2014
  • #12
PHP:
$query= mysqli_query($conn,"SELECT COUNT(*) as n_ricorrenze, tipo FROM adidas GROUP BY tipo");
 
Ultima modifica: 9 Nov 2014
Devi accedere o registrarti per poter rispondere.

Discussioni simili

R
  • Bloccata
INSERT INTO tabella non funziona
  • Randomperson
  • 20 Giu 2021
  • Classic ASP
Risposte
2
Visite
2K
Classic ASP 28 Ago 2021
Paolo69
[PHP] Insert into non inserisce tutti i dati
  • Monital
  • 24 Nov 2018
  • PHP
Risposte
1
Visite
2K
PHP 24 Nov 2018
Monital
[PDO] insert che non inserisce e non da errori
  • MarcoGrazia
  • 22 Ott 2014
  • PHP
Risposte
1
Visite
2K
PHP 23 Ott 2014
marino51
Insert into che da errore: numero di parametri non validi....
  • MarcoGrazia
  • 18 Ott 2014
  • MySQL
Risposte
7
Visite
2K
MySQL 19 Ott 2014
marino51
[risolto] insert into if select non presente
  • Monital
  • 22 Feb 2014
  • MySQL
Risposte
7
Visite
3K
MySQL 22 Feb 2014
Monital
S
INSERT e UPDATE non funzionano
  • stefano862
  • 12 Gen 2014
  • PHP
Risposte
1
Visite
1K
PHP 12 Gen 2014
stefano862
S
A
insert funziona in server locale ma non in remoto
  • andreahrc
  • 28 Feb 2013
  • MySQL
Risposte
7
Visite
2K
MySQL 2 Mar 2013
Longo8
P
Access: recuperare Indice dopo un insert into
  • psicona
  • 18 Nov 2023
  • MS Access
Risposte
0
Visite
1K
MS Access 18 Nov 2023
psicona
P
Z
problemi con foreach insert into
  • Zhilang
  • 6 Feb 2021
  • PHP
Risposte
10
Visite
1K
PHP 7 Feb 2021
illiterate2020
I
Y
INSERT INTO
  • ymod
  • 22 Dic 2020
  • PHP
Risposte
0
Visite
740
PHP 22 Dic 2020
ymod
Y
M
più insert tramite while loop
  • miagy
  • 15 Set 2020
  • PHP
Risposte
1
Visite
918
PHP 16 Set 2020
Tommy03
A
PROBLEMA: insert mysqli con dati Tagsinput
  • andreaFerro95
  • 30 Apr 2020
  • Presentati al Forum
Risposte
0
Visite
909
Presentati al Forum 30 Apr 2020
andreaFerro95
A
G
Insert into select - Aiuto
  • guidomix
  • 18 Apr 2020
  • MySQL
Risposte
0
Visite
1K
MySQL 18 Apr 2020
guidomix
G
L
Insert php sql da una form multipla
  • Lollo791
  • 17 Apr 2020
  • PHP
Risposte
6
Visite
2K
PHP 17 Apr 2020
Lollo791
L
A
[PHP] Problema query insert [RISOLTO]
  • Arawan Omacha
  • 10 Ott 2019
  • PHP
Risposte
14
Visite
3K
PHP 17 Apr 2020
Arawan Omacha
A
[RISOLTO][Mysql] Problema insert valori apostrofati
  • elpirata
  • 9 Apr 2019
  • MySQL
Risposte
1
Visite
1K
MySQL 9 Apr 2019
elpirata
P
[PHP] INSERT e UPDATE
  • prate007
  • 7 Apr 2019
  • PHP
Risposte
1
Visite
2K
PHP 8 Apr 2019
marino51
D
[ASP] Mysql insert e update
  • djjunior
  • 26 Mar 2019
  • Classic ASP
Risposte
2
Visite
2K
Classic ASP 29 Mar 2019
djjunior
D
M
[Javascript] Verifica calcolo prima di fare insert
  • Max61
  • 20 Feb 2019
  • Javascript
Risposte
13
Visite
3K
Javascript 28 Feb 2019
Max61
M
[PHP] problema entrata immagini insert
  • trattorino
  • 8 Nov 2018
  • PHP
Risposte
1
Visite
1K
PHP 9 Nov 2018
macus_adi
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Hosting, Server e Sistemi
  • Database
  • MySQL
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?