creazione pagina news dinamica

  • Creatore Discussione Creatore Discussione student
  • Data di inizio Data di inizio

student

Nuovo Utente
29 Lug 2014
14
0
0
salve ho creato una pagina news dinamica con titolo descrizione tutta funzionante
adesso sotto la descrizione voglio inserire ad ogni news delle foto solo che con questo non mi funziona
vi inserisco lo script creato da me:

creata la pagina form funzionante
HTML:
<body>
<form action="inserisci.php" method="post" enctype="multipart/form-data">
titolo:<input type="text"name="titolo"style="width:300px"/>
<br>
articolo:<textarea type="textarea"name="corpo_testo"rows="30" cols="50"></textarea>
<br>
Immagine: <input type="file" name="immagine_file" size="40">
<br>
<input type="submit"/>
<input type="hidden" name="MAX_FILE_SIZE" value="10000">
</form>
</body>
</html>

script per interagire con il form:
PHP:
<?php
$con=mysqli_connect("localhost","seprova","password",my_seprova);
if (mysqli_connect_errno()){
echo "failed to connect to MYSQL:  " .mysqli_connect_error();
}
$titolo=mysqli_real_escape_string($con,$_POST['titolo']);
$corpo_testo=mysqli_real_escape_string($con,$_POST['corpo_testo']);
$immagine_file=mysqli_real_escape_string($con,$_POST['immagine_file']);
$sql="INSERT INTO novita (titolo,corpo_testo,immagine_file)
VALUES ('$titolo','$corpo_testo','$immagine_file')";
$file_temp=($_FILES['userfile']['tmp_name']);
$percorso="http://seprova.altervista.org/foto/";
$inviato=file_exists($file_temp);
if ($inviato) {
move_uploaded_file($file_temp,$nuovo_nome);
 header("Location:inserisci.php");
 // sposto l'immagine nella cartella e vado 
 // alla pagina di visualizzazione
 } else {
 header("Location:Errore.php");
 // vado alla pagina di errore 
}
if (!mysqli_query ($con,$sql)){
die ('Error: ' .mysqli_error ($con));
}
echo "1 record added";
mysqli_close ($con);
?>


pagina di visualizzazione news
PHP:
<?php
$username="seprova";
$password="";
$database="my_seprova";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database)or die ("Impossibile selezionare il DB");
$query=("SELECT*FROM novita");
$risultati=mysql_query($query);
$num=mysql_numrows($risultati);
mysql_close ();
echo"<b><center>Benvenuti nelle NEWS </center></b><br><br>";
$i=0; while ($i<$num){
$titolo=mysql_result($risultati,$i,"titolo");
$corpo_testo=mysql_result($risultati,$i,"corpo_testo");
echo"<b><center>$titolo</b></center><br>"; 
echo"<b>$corpo_testo</b><hr>";
$i++;
}
?>
</body>
</html>
 
Ultima modifica di un moderatore:
ciao
prima cosa
$_POST['immagine_file']
non ti riporta il nome del file, ma è un array
$_POST['immagine_file']['name'] $_POST['immagine_file']['tmp_name'] $_POST['immagine_file']['type']$_POST['immagine_file']['size']
poi
non vedo dove definisci la variabile $nuovo_nome
secondo me dovrebbe essere
PHP:
 $nuovo_nome=basename($_POST['immagine_file']['name']);
analogo discorso per la parte dell'INSERT
nel campo della tabella immagine_file dovresti trovare es. pinco.jpg (con o senza path)
ultimo ma non meno importante quando si caricano o si fanno caricare dei file è essenziale verificare il tipo, non credo che tu voglia che qualcuno ti carichi un bel cancella_tutto.exe
dimenticavo non ti serve verificare sche esista il file temporaneo, ma devi verificare che non esosta il file c(stesso nome) nella cartella foto
 
buon pomerigio. non ho capito bene nei miei script creati cosa devo aggiungere per l'inserimento delle immagini
 

Discussioni simili