Visualizzazione risultati 1 fino 2 di 2

Discussione: Query mysql non viene eseguita in certi browser

  1. #1
    Guest

    Predefinito Query mysql non viene eseguita in certi browser

    Salve,
    come da titolo sto cercando di venire a capo ad un problema piuttosto singolare:
    sul mio sito (portfolio), ho implementato un gestore per l'upload/modifica/eliminazione di immagini, ma ho notato di avere problemi quando tento di caricare una nuova immagine (che salvo nel DB). Piu in dettaglio la query di inserimento fallisce solamente da alcuni browser. Infatti su Opera e Chrome funziona tutto alla perfezione, mentre in Firefox/Safari la query di upload fallisce (cosa piuttosto insolita che funzioni su certi browser e su altri no).
    So che è difficile cercare di aiutarmi senza sapere quale sia la logica dietro al sito e l'organizzazione del DB, tuttavia lascio qua sotto le query coinvolte e la struttura delle tabelle DB.

    Codice PHP:

    if($_FILES["upload_file"]["name"] != '')
    {
    $data = explode(".", $_FILES["upload_file"]["name"]);
    $extension = $data[1];
    $allowed_extension = array("jpg", "JPG", "JPEG", "TIFF", "BMP", "png", "gif");
    if(
    in_array($extension, $allowed_extension))
    {
    $new_file_name = rand() . '.' . $extension;
    $path = $_POST["hidden_folder_name"] . '/' . $new_file_name;

    $query = "INSERT INTO immagini_x_cartelle (cartella, immagine) VALUES ('".$_POST["hidden_folder_name"]."','".$new_file_name."');";
    $statement = $connect->prepare($query);
    $statement->execute();

    $query = "INSERT INTO tbl_image (image_name, image_description) VALUE('".$new_file_name."','');";
    $statement = $connect->prepare($query);
    $statement->execute();
    if(
    move_uploaded_file($_FILES["upload_file"]["tmp_name"], $path))
    {
    echo
    'Immagine Caricata';
    }
    else
    {
    echo
    'Si e verificato un errore';
    }
    }
    else
    {
    echo
    'Formato immagine non supportato';
    }
    }
    else
    {
    echo
    'Seleziona un immagine';
    }
    Tabelle:

    tbl_image(image_id,image_name,image_description)
    immgini_x_cartelle(id_img_cartella,cartella,immagi ne)


    La mia domanda principale è come sia possibile che da browser diversi una query php abbia successo o meno.
    Grazie in anticipo a tutti!
    Ultima modifica di chiaraportfolio : 27-09-2019 alle ore 00.12.10

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,760

    Predefinito

    Hai provato ad esempio con la errorInfo() per sapere cosa non va?

    Non centra nulla con il tuo problema, ma ti consiglio caldamente di inserire i parametri nella query con la bind_param() per evitare attacchi sql injection (non tanto per $new_file_name, ma piuttosto per i dati provenienti da utente, quindi $_POST[]).

    Ciao!
    Ultima modifica di alemoppo : 27-09-2019 alle ore 20.12.29

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •