2013-03-11 9 views
13

Voglio inviare i dati immessi in un modulo html al mio database sql, cioè creare una nuova riga attribuendo determinati valori a determinate colonne. So che ci sono domande simili, leggo le risposte ma niente sembra funzionare.Invia i dati del modulo html al database sql via php (usando mysqli)

send_post.php

<?php 
//Connecting to sql db. 
$connect = mysqli_connect("my host","my user","my passwrod","my db"); 
//Sending form data to sql db. 
mysqli_query($connect,"INSERT INTO posts (category, title, contents, tags) 
VALUES ('$_POST[post_category]', '$_POST[post_title]', '$_POST[post_contents]', '$_POST[post_tags]')"; 
?> 

post.html # forma

<form onSubmit="send_post.php" method="post"> 
    <h3>Category:</h3> 
    <input type="text" name="post_category"> 
    <h3>Post title:</h3> 
    <input type="text" name="post_title"> 
    <h3>Post tags (a,b,c...):</h3> 
    <input type="text" name="post_tags"> 
    <h3>Post (use html):</h3> 
    <textarea rows="20" cols="50" name="post_contents"></textarea> 
    <input type="submit"> 
</form> 

miei db "messaggi" colonne della tabella:

pid 
title 
contents 
tags 
category 

pid ha auto_increment su

Ho già provato a inviare valori a tutte le colonne, incluso pid e nell'ordine "giusto".

La parte mysqli_connect non è il problema poiché l'ho copiata da un altro file .php che funziona.

La compatibilità php-sql del server non è il problema, dal momento che ho avuto un diverso file .php per recuperare i dati dal db (dati che sono stati inseriti manualmente).

+0

Quando dici che nulla sembra funzionare, cosa non funziona? Riceverai un errore, dati errati nel db, ecc.? –

+0

Intendo dire che nessuna delle soluzioni fornite dalle risposte di diverse domande ha funzionato. Non stavo ottenendo output di errore. – Alex

risposta

15

cambiamento questo

<form onSubmit="send_post.php" method="post"> 

a

<form action="send_post.php" method="post"> 
+1

Era così. Ero così concentrato sul file .php che non avrei mai sospettato di ciò. Non capisco perché farebbe la differenza, però. Grazie. – Alex

+0

@ user117893 welcome .. :) –

+2

@ user117893 onSubmit chiama una funzione javascript quando viene premuto il pulsante di invio, l'azione di un modulo è la pagina di URL per inviare il modulo a. –

0
$connect = mysqli_connect("my host","my user","my password","my db"); 

Non dimenticate di correggere tutti gli errori di ortografia, può essere una seccatura quando non si sa che cosa sta andando male. (password fallita come password)