Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di szz
    Registrato dal
    Sep 2014
    residenza
    Barcelona
    Messaggi
    5

    Ricare la pagina in PHP

    Ciao a tutti,

    Vi scrivo perché ho un piccolo problema con PHP: non riesco a caricare correttamente la pagina..

    Cerco di spiegarmi meglio: normalmente quando ricarico le pagine PHP del sito (che non ho cominciato a scrivere io, solamente faccio delle modifiche quando necessario), lo faccio attraverso una funzione JavaScript dopo aver cliccato su un pulsante grazie all'evento onclick.

    L'istruzione eseguita in JavaScript che uso di solito è questa:

    codice:
    $("#content").load("pagina.php");
    La quale funziona molto bene e ricarica la pagina web con tutte le sue icone etc. , tra l'altro nella barra dell' URL del browser non viene visualizzato il nome della pagina web (i.e. 'url-sito/pagina.php').

    Ora la situazione è leggermente diversa. Grazie al tutorial PHP5 file upload di w3schools sono riuscito ad implementare la funzionalità di upload di file sul server. Il problema è che non riesco a ricaricare la pagina in maniera corretta.

    Ho implementato questo codice:

    pagina.php (solo la parte interessata)
    codice HTML:
    <form action="upload.php" method="post" enctype="multipart/form-data">
        <h3>Upload a file:</h3>
        <input type="file" name="fileToUpload" id="fileToUpload">
        <input type="submit" value="Upload" name="submit">
    </form>

    upload.php

    Codice PHP:
    <?php
    /* upload.php */
    include("pagina.php");
    ob_start();
    session_start();

    set_time_limit(0);

    $targetDir "/path/to/upload/dir";
    $targetFile $targetDir basename($_FILES["fileToUpload"]["name"]);
    $upload 1;
    $fileType pathinfo($targetFilePATHINFO_EXTENSION);

    if(isset(
    $_POST["submit"]))
    {
        
    /* Check file size */
        
    if($_FILES["fileToUpload"]["size"] > 500000)
        {
            echo 
    "Sorry, your file is too large.";
            
    $upload 0;
        }
        
    /* Allow certain file formats */
        
    if($fileType != "data" )
        {
            echo 
    "Sorry, non valid filetype.";
            
    $upload 0;

        }
        
    /* Check if $uploadOk is set to 0 by an error */
        
    if($upload == 0)
        {
            echo 
    "Sorry, your file was not uploaded.";
            
    ob_end_flush();
        } 
        else
        {
            if (
    move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $targetFile))
            {
                echo 
    "The file "basename$_FILES["fileToUpload"]["name"]). " has been uploaded.";
            }
            else
            {
                echo 
    "Sorry, there was an error uploading your file.";
            }

            
    ob_end_flush();
        }
    }
    ?>

    Ma in questo caso la pagina non viene ricaricata correttamente. Solo alcune icone e la scrita

    The file "file.ts" has been uploaded.

    Ho pure provato ad aggiungere una piccola funzione in Javascript con il codice sopra però non ha funzionato.

    Purtroppo la programmazione web non è il mio forte.
    Scusate in anticipo se ho scritto qualche castroneria.

    Vi ringrazio in anticipo.



    szz
    Ultima modifica di szz; 05-12-2014 a 11:37

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Vedi solo la scritta perché solo quella viene stampata dallo script PHP che hai.
    Quello script se stampa qualcosa lo fa in una pagina nuova (non nella pagina da cui lo chiami) il cui contenuto deve essere generato da esso stesso, se non ricrea tutta la struttura HTML della pagina stamperà solo il messaggio.

  3. #3
    Utente di HTML.it L'avatar di szz
    Registrato dal
    Sep 2014
    residenza
    Barcelona
    Messaggi
    5
    Grazie per la risposta.

    Tuttavia continuo a non capire perché non ricarica la pagina anche se io la includo.

    Ho messo tutto il codice all'interno dello stesso file PHP, eliminando le istruzioni:

    Codice PHP:
    ob_start();
    session_start();

    ob_end_flush(); 

    pagina.php

    codice:
    if(isset($_POST["submit"]))
    {
        $targetDir = "/path/to/upload/dir";
        $targetFile = $targetDir . basename($_FILES["fileToUpload"]["name"]);
        $upload = 1;
        $fileType = pathinfo($targetFile, PATHINFO_EXTENSION);
    
        /* Check file size */
        if($_FILES["fileToUpload"]["size"] > 500000)
        {
            echo "Sorry, your file is too large.";
            $upload = 0;
        }
        /* Allow certain file formats */
        if($fileType != "data" )
        {
            echo "Sorry, non valid filetype.";
            $upload = 0;
    
        }
        /* Check if $uploadOk is set to 0 by an error */
        if($upload == 0)
        {
            echo "Sorry, your file was not uploaded.";
        } 
        else
        {
            if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $targetFile))
            {
                echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
            }
            else
            {
                echo "Sorry, there was an error uploading your file.";
            }
        }
    }
    
    <form action="pagina.php" method="post" enctype="multipart/form-data">
        <h3>Upload a file:</h3>
        <input type="file" name="fileToUpload" id="fileToUpload">
        <input type="submit" value="Upload" name="submit">
    </form>
    Ma il comportamento è lo stesso...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.