[RISOLTO]Problema connessione + insert mysqli

Hackx

Utente Attivo
20 Ago 2013
109
0
16
Ciao a tutti,

Ho un problema riguardante l'inserimento dei dati nel DB

config.php:

PHP:
<?php

$host = "localhost";
$username = "root";
$password = "password";
$database = "DB";

//connessione DB

$conn = mysqli_connect($host, $username, $password, $database)
        or die (mysqli_connect_error());

?>


ed ecco il controllo del nome e del cognome ... che poi dovranno essere inseriti nel DB

PHP:
<?php

include "config.php";

if(isset($_POST['submit']))
{

if ($_POST['nome'] == '')
{
echo "Non hai compilato il campo nome.<br/>";
} else {
$nome = $_POST['nome'];
}


     if ($_POST['cognome'] == '')
     {
     echo "Non hai compilato il campo cognome.<br/>";
     } else {
     $cognome = $_POST['cognome']; 
     }	  
	 
	
echo "registrazione effettuata!";
} else {	
mysqli_query($conn,"INSERT INTO 'prova iscrizione' ('nome', 'cognome') VALUES "
. "('{$_POST['nome']}', '{$_POST['cognome']}')");

echo "Registrazione ";
?>

Dove sbaglio ?... non mi restituisce nessun errore è come se ogni volta che faccio invia ...i dati sono scritti sul DB in maniera corretta, ma quando vado a vedere il DB su phpmyadmin, quest'ultimo è vuoto !

Come posso fare ??

Ringrazio,
Andrea
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, gli errori ci sono ma non li stampi
non puoi concatenare una stringa in quel modo e ti conviene separare la stringa della query dall'esecuzione. almeno fino a che non diventi super esperto allora potrai scrivere tutto il codice su una riga sola
PHP:
$query = "INSERT INTO 'prova iscrizione' ('nome', 'cognome') 
                         VALUES ('{$_POST['nome']}', '{$_POST['cognome']}') ";
$res = mysqli_query($conn, $query);
if (!$res)
    echo mysqli_error($conn);
così è più ordinato
 
Ultima modifica:

Hackx

Utente Attivo
20 Ago 2013
109
0
16
Ciao !

Innanzitutto ti volevo ringraziare per l'aiuto ! e per il consiglio !... ho corretto tutto ed ecco gli errori che mi stampa:

1° errore : Undefined index: nome

2° errore : Undefined index: cognome

3° errore : 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 ''prova iscrizione' ('nome', 'cognome') VALUES ('', ''' at line 1Registrazione (presumo sia l'errore del mysqli)

Ringrazio,
Andrea
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Per i primi due ci sono degli errori di logica nelle if e else che hai messo
puoi fare semplicemente cosi
PHP:
<?php

include "config.php";

if (isset($_POST['submit'])) {

    if (!empty($_POST['nome']) && !empty($_POST['cognome'])) {

        $query = "INSERT INTO prova_iscrizione ('nome', 'cognome') 
                         VALUES ('{$_POST['nome']}', '{$_POST['cognome']}')";
        $res = mysqli_query($conn, $query);
        if (!$res)
            echo mysqli_error($conn);
        else
            echo "registrazione effettuata!";
    } else {
        echo "Non hai compilato tutti i campi ";
    }
}
?>
il terzo riguarda gli apici che hai messo per racchiudere il nome della tabella, sarebbe consigliato non mettere spazi vuoti nel nome dei campi o delle tabelle, in altrnativa si devono usare altri tipi di apici che non mandano in errore la query ( ` )
 

Hackx

Utente Attivo
20 Ago 2013
109
0
16
Ciao,

Ti volevo dire che ho risolto! :D ! finalmente!
Ho impostata tutto con gli elseif ed ho messo le variabili di sotto, infondo al codice sopra la query d'inserimento e tutto funziona !

Grazie mille :) !
Andrea
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
ciao
io metterei almeno un trim, altrimenti qualcuno può iscriversi con una serie di spazi
PHP:
<?php
//....
if (!empty(trim($_POST['nome'])) && !empty(trim($_POST['cognome']))) {
//....
?>
e fare anche altro es controllare che il nome e/o cognome non siano es pin**|+co cioè con caratteri strani e verificherei che non esistano di già
 

Hackx

Utente Attivo
20 Ago 2013
109
0
16
ciao
io metterei almeno un trim, altrimenti qualcuno può iscriversi con una serie di spazi
PHP:
<?php
//....
if (!empty(trim($_POST['nome'])) && !empty(trim($_POST['cognome']))) {
//....
?>
e fare anche altro es controllare che il nome e/o cognome non siano es pin**|+co cioè con caratteri strani e verificherei che non esistano di già

Ciao,

Adesso riguarderò tutto il codice ed aggiungerò, oltre all'empty, il comando trim.
Mentre per controllare nome e cognome ho usato preg_match (sole lettere) e per verificare se è presente già nel DB o no posso usare una cosa del genere:

PHP:
$query = "SELECT nome FROM prova_iscrizione WHERE nome = '$nome'";
$risultato = mysql_query($query, $db);
$num = mysql_num_rows ($risultato);
if($num == '0'){
puoi salvare il record
}else{
errore record gia esistente
}

Un'altra domanda.. se è corretto, lo script sopra lo devo usare per il nome e cognome. Ovvero ne devo scrivere due distinti oppure li posso unire in qualche modo ??

Ringrazio,
Andrea
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
148
63
PR
www.borgo-italia.it
cioa
mi ero dimenticato (l'avevo saltato nel copy/paste)

PHP:
$query = "SELECT nome FROM prova_iscrizione WHERE nome = '$nome' AND cognome='$cognome'";
devi verificare che non ci siano es due mario rossi
 
Discussioni simili
Autore Titolo Forum Risposte Data
tomorc [HTML] Problema con scroll bar (risolto) HTML e CSS 0
A [PHP] Problema query insert [RISOLTO] PHP 14
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
elpirata [RISOLTO][Mysql] Problema insert valori apostrofati MySQL 1
Kolop [RISOLTO][PHP] Problema Pagination PHP 2
S Problema in PHP per invio file XML - RISOLTO- PHP 8
T [Photoshop] Problema creazione pennello personalizzato [RISOLTO] Photoshop 3
F [risolto] Problema javascript Internet Explorer Javascript 1
otto9due [risolto] Problema sessioni php e login PHP 5
Alessandro Le Mura [risolto] PHP problema memorizzazione array PHP 4
S [risolto] Problema riempimento di una tabella PHP 6
P [risolto] Problema funzione raggruppamento di elementi Javascript 4
T [Javascript] [RISOLTO] Problema con Google Maps e "Zero_Results" Javascript 11
steak [RISOLTO] Problema con 'a:hover' HTML e CSS 12
Virginia86 [risolto] Problema select e verifica form PHP 38
M [RISOLTO]Problema controllo e passaggio di valori da una pagina all''altra PHP 4
O [risolto] Inserimento nuovo campo in mysql. Problema PHP 6
lsnight [RISOLTO] Problema con mouseout ed immagini Javascript 2
V [RISOLTO]Problema con il POST PHP 8
A [Risolto] Problema con un list box Classic ASP 2
M [Risolto]Problema con risposta json Sviluppo app per Android 6
C [RISOLTO] Problema somma td, prende solo il primo valore jQuery 7
C Problema Risolto Flash 0
L (risolto) MySQL 0
B getElementById su piu id(Risolto) Javascript 6
L Esercitarsi con Js [RISOLTO] Javascript 4
C [RISOLTO]Inserimento variabile php in input html PHP 20
L risolto visualizzazione e ordinamento dati PHP 1
moustache [RISOLTO] SQL PHP IIS PHP 8
Sergio Unia Ricezione email con destinatari multipli [Risolto] PHP 2
L update tabelle in php mysql [risolto] PHP 6
M Semplice visualizzatore di immagini [risolto con plugin wp] PHP 7
L [RISOLTO] Stampa a video risultato count in html PHP 13
L [RISOLTO] Eliminare una discussione creata PHP 3
B [PHP] recuperare IP dei server in load balancing [RISOLTO] PHP 3
S [RISOLTO] aggiorna tabella da select option asp classic Classic ASP 7
elpirata [RISOLTO][Javascript] Datapicker e autocompletamento campo input Javascript 2
elpirata [RISOLTO][Mysql] Contare le occorrenze in un campo tipo varchar MySQL 2
G [MS Access] Gestione biglietti [RISOLTO] MS Access 2
G [MS Access] Casella combinata & Query [RISOLTO] MS Access 4
G [MS Access] Query mese corrente con conteggio [RISOLTO] MS Access 2
M [RISOLTO]Windows media player non mi funziona più su win 10 pro 64 bit Windows e Software 2
C [RISOLTO][PHP] Errore di sintassi PHP 8
IT9-Gpp [RISOLTO] Leggere variabile restituita da success Ajax 3
C [RISOLTO][PHP] Funzione ONclick PHP 14
C [RISOLTO][PHP] Conteggio righe di una tabella PHP 4
N [PHP] Utilizzo variabili di sessione [Risolto] PHP 13
Tommy03 [RISOLTO][PHP] Webserver o devserver? PHP 2
Sergio Unia Recupero dati da una vecchia versione MySql [Risolto] MySQL 4
spider81man [PHP] Problemi cancellazione dato su DB [RISOLTO] PHP 1

Discussioni simili