• User

    Questo è il file originale che mi aveva fatto il mio amico e che funziona benissimo....
    Non vedo nessun include, a parte per connessione.php che ho lasciato anche io.

    [PHP] <?php
    error_reporting(0);
    $dimensionemassimaimmagine='6000000';
    $larghezzamassimaimmagine='550';
    $altezzamassimaimmagine='600';
    //testo
    $nomecognome=$_POST["nome_cognome"];
    $stato=$_POST["stato"];
    $localita=$_POST["localita"];
    $data=$_POST["data"];
    $commento=$_POST["commento"];
    if($nomecognome=="")
    {
    echo("
    <p align='left'><font face='Arial' color='#FFCC00' size='3'><b>ERRORE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'>Devi inserire il tuo nome e cognome.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    else
    {
    //immagine
    include('connessione.php');
    $result=mysql_query("select max(codice_viaggio)as massimo from viaggi", $conn);
    $row=mysql_fetch_array($result);
    $nomefile=$row["massimo"]+1;
    if ($_FILES["file"]["type"] == "image/gif")
    {
    $formato='gif';
    }
    if ($_FILES["file"]["type"] == "image/jpg")
    {
    $formato='jpg';
    }
    if ($_FILES["file"]["type"] == "image/pjpeg")
    {
    $formato='jpeg';
    }

    $dimensioni = getimagesize($_FILES['file']['tmp_name']);
    $larghezza = $dimensioni[0];
    $altezza = $dimensioni[1];
    if (($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpg")
    || ($_FILES["file"]["type"] == "image/pjpeg")
    && ($_FILES["file"]<=$dimensionemassimaimmagine)
    && $larghezza<=$larghezzamassimaimmagine && $altezza<=$altezzamassimaimmagine)
    {
    $result=mysql_query("insert into viaggi(codice_viaggio, data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio, pubblicato_viaggio, formatoImmagine_viaggio) values ('$nomefile', '$data', '$nomecognome', '$stato', '$localita', '$commento', 'n', '$formato')", $conn);
    copy($_FILES['file']['tmp_name'],'public/immagini_caricate/'.$nomefile.'.'.$formato);
    echo("
    <p align='left'><font face='Arial' color='#FFCC00' size='3'><b>IMMAGINE CARICATA CORRETTAMENTE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'>$nomecognome, la tua foto è stata salvata correttamente.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'><a href=javascript:history.back()>Carica una nuova foto</a></font></p>
    ");
    unlink($_FILES['file']['tmp_name']);
    }
    else
    {
    echo("
    <p align='left'><font face='Arial' color='#FFCC00' size='3'><b>ERRORE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'>$nomecognome, la tua foto non è stata caricata, controlla la dimensione, la lunghezza e l'altezza dell'immagine.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    }
    ?>[/PHP]


  • User

    quindi?


  • User Attivo

    forse ho capito, ma non ti assicuro niente!

    prima di tutto leva alla 1a riga dopo il tag <?php

    il codice

    [php]

    error_reporting(0);

    [/php]

    che io non vedo a cosa serva... forse perchè non me ne intendo tantissimo...

    così da ottenere

    [php]

    <?php
    $dimensionemassimaimmagine='6000000';

    [...]

    [/php]

    rilancia lo script e dimmi...


  • User

    Funziona, ma come funzionava prima...

    Quello è il codice che ho usato per arrivare a questo, che NON FUNZIONA e non capisco il perchè:

    [PHP]<?php
    //testo
    $nomecognome=$_POST["nome_cognome"];
    $stato=$_POST["stato"];
    $localita=$_POST["localita"];
    $data=$_POST["data"];
    $commento=$_POST["commento"];
    if($nomecognome=="")
    {
    echo("
    <p align='left'><font face='Arial' color='#FFffff' size='2'><b>ERRORE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'>Devi inserire il tuo nome.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    else
    { if($localita=="")
    {
    echo("
    <p align='left'><font face='Arial' color='#FFffff' size='2'><b>ERRORE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'>Devi inserire la tua città.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    else
    { if($data=="")
    {
    echo("
    <p align='left'><font face='Arial' color='#FFffff' size='2'><b>ERRORE</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'>Devi inserire un recapito.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFffff'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    else
    {
    include('connessione.php');
    $result=mysql_query("select max(codice_viaggio)as massimo from viaggi", $conn);
    $row=mysql_fetch_array($result);
    $result=mysql_query("insert into viaggi(codice_viaggio, data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio, pubblicato_viaggio) values ('$data', '$nomecognome', '$stato', '$localita', '$commento', 'n', )", $conn) or die ('errore:' . mysql_error());
    echo("
    <p align='left'><font face='Arial' color='#FFffff' size='2'><b>Processo corretto</b></font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'>$nomecognome, i tuoi dati sono stati registrati sul Database de ilBarrato.</font></p>
    <p align='left'><font face='Arial' size='2' color='#FFCC00'><a href=javascript:history.back()>Torna indietro</a></font></p>
    ");
    }
    }
    }
    ?>[/PHP]


  • ModSenior

    L'errore è la query hai messo che vuoi riempire tutti i campi, ma nei valori ne hai messi un numero inferiore, ed inoltre c'è una virgola alla fine.


  • User

    Cosa manca?
    data c'è
    nome c'è
    stato c'è
    località c'è
    commento c'è

    Ho tolto la virgola

    [PHP]$result=mysql_query("insert into viaggi(codice_viaggio, data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio, pubblicato_viaggio) values('$data', '$nomecognome', '$stato', '$localita', '$commento', 'n' )", $conn) or die ('errore:' . mysql_error());
    [/PHP]


  • ModSenior

    Campi:
    (codice_viaggio, data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio, pubblicato_viaggio)

    Valori:
    ('$data', '$nomecognome', '$stato', '$localita', '$commento', 'n'

    i campi sono più dei valori


  • User

    [PHP]$result=mysql_query("insert into viaggi(data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio) values('$data', '$nomecognome', '$stato', '$localita', '$commento', 'n' )", $conn) or die ('errore:' . mysql_error());
    [/PHP]

    Provo così?


  • ModSenior

    I campi sono 5 forse ti sei scordato qualche virgola(nomeCognomeUtente_viaggio) e i valori sono 6


  • User

    Ho risolto. Lo metto per eventuali curiosi o bisognosi:

    [PHP]
    <?php
    error_reporting(0);
    $nomecognome=$_POST["nome_cognome"];
    $stato=$_POST["stato"];
    $localita=$_POST["localita"];
    $data=$_POST["data"];
    $commento=$_POST["commento"];
    if($nomecognome=="")
    {
    echo("ERRORE");
    }
    else
    { if($localita=="")
    {
    echo("ERRORE");
    }
    else
    { if($data=="")
    {
    echo("ERRORE");
    }
    else
    {

    include('connessione.php');
    $result=mysql_query("select max(codice_viaggio)as massimo from viaggi", $conn);
    $row=mysql_fetch_array($result);
    $nomefile=$row["massimo"]+1;
    $result=mysql_query("insert into viaggi(codice_viaggio, data_viaggio, nomeCognomeUtente_viaggio, codice_stato, localita_viaggio, commento_viaggio, pubblicato_viaggio) values ('$nomefile', '$data', '$nomecognome', '$stato', '$localita', '$commento', 'n')", $conn);

    echo("CORRETTO");
    }
    }
    }
    ?>
    [/PHP]