Inserimento dati nel database.

  • Creatore Discussione Creatore Discussione Liiuk
  • Data di inizio Data di inizio

Liiuk

Nuovo Utente
2 Feb 2012
13
0
1
Salve a tutti, Sono dinanzi ad un problemone. Mi sto occupando della realizzazione di un sito web in html e css..solo che mi servirebbe una mano con un po di php. In pratica l utente che arriva nel mio sito deve poter pubblicare un video (si parlerà di video tipo mini-cortometraggi e saranno precaricati su youtube). Di fatti gli utenti pubblicheranno nel mio sito solo l'URL del video. Tutti i video appariranno nella mia home uno sotto l altro, e poi ci sarà a lato una colonna con il la casella di testo per mettere l url e il pulsante pubblica. ora il mio problema è proprio questo: uso phpmyadmin e creo la tabella con un solo campo...ma quando premo il pulsante, l'URL che ho immesso nella casella di testo NON vengono inseriti nel database...perchè? ecco il codice...ps: come nome tablla suphpmyadmin metto nome_tabella e come nome del campo metto nome_campo_url...potete vedere se c'è qualcosa di sbagliato? grazie in anticipo
HTML:
<?php
$db_conn = mysql_connect("localhost","root","PASSWORD");mysql_select_db("NOME_DATABASE", $db_conn);?><HTML>
<HEAD>


<TITLE></TITLE>
</HEAD>
<BODY>


<form method="POST" action="?page=inserimento">
<input type="text" name="url_da_inserire">
<br>
<input type="submit" value="Invia">
</form>
<?php


if($_GET["page"]=="inserimento"){


$url=$_POST["url_da_inserire"];
$query="INSERT INTO 'nome_tabella' ('nome_campo_url_nella_tabella') VALUES ($url)";
mysql_query($query);
}
$query2="SELECT nome_campo_url FROM nome_tabella";
$risultati=mysql_query($query2);
$righe=mysql_num_rows($risultati);
if($righe==0) echo "Nessun video";
else{
$i=0;
while($i<$righe){
$short_url=mysql_result($risultati,$i,"nome_campo_url");
?>
<embed src="<? echo $short_url; ?>">
</embed>
<?
$i++;
}
}

?>
</BODY>
</HTML>
 
ciao
intanco correggi
PHP:
$query="INSERT INTO nome_tabella (nome_campo_url_nella_tabella) VALUES ('$url')";
poi se non funzia ancora posta

p.s.
scrivi minuscolo i tag (es. <head>)
 
Non funziona :\ ... ma i dati configurazione database sono giusti? ce lho su altervista quindi uso phpmyadmin...
HTML:
<?php
$db_conn = mysql_connect("localhost","root","PASSWORD");mysql_select_db("NOME_DATABASE", $db_conn);?>
<html>
<head>


<title></title>
</head>
<body>


<form method="POST" action="?page=inserimento">
<input type="text" name="url_da_inserire">
<br>
<input type="submit" value="Invia">
</form>
<?php


if($_GET["page"]=="inserimento"){


$url=$_POST["url_da_inserire"];
$query="INSERT INTO 'nome_tabella' ('nome_campo_url') VALUES ('$url')";
mysql_query($query);
}
$query2="SELECT nome_campo_url FROM nome_tabella";
$risultati=mysql_query($query2);
$righe=mysql_num_rows($risultati);
if($righe==0)  echo "Nessun video";

else{
$i=0;
while($i<$righe){
$short_url=mysql_result($risultati,$i,"nome_campo_url");
?>
<embed src="<? echo $short_url; ?>">
</embed>
<?
$i++;
}
}

?>
</body>
</html>
 
ciao
i dati/istruzioni di connessione sono sintatticamente corretti, però se sono anche giusti formalmente non posso saperlo sei tu che decidi come es. chiamare il db
alle righe metti così vedi
PHP:
<?php
$db_conn = mysql_connect("localhost","root","PASSWORD") or die(mysql_error());
mysql_select_db("NOME_DATABASE", $db_conn) or die(mysql_error());
?>

poi perchè usi quel metodo del get?
prova a correggere e provvisoriamente ad aggiungere dei var_dump
PHP:
<!-- ..... -->
<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="url_da_inserire">
<br>
<input type="submit" value="Invia" name="invia">
</form>
<?php
if(isset($_POST['invia']){
	$url=$_POST["url_da_inserire"];//NOTA: andrebbe verificato è pericoloso inserire brutalmente i dati nel db
	$query="INSERT INTO nome_tabella (nome_campo_url) VALUES ('$url')";
	var_dump($query);//con questa vedi se la querystringa viene giusta, poi lo togli o lo commenti
	$ris=mysql_query($query);
	var_dump($ris);// se OK ti da resource..., se KO bool false
}
//....
?>
 

Discussioni simili