PHP blank white page, no errors

I have a PHP page that I developed locally and worked fine. By uploading it to the server, am I just getting a blank white screen? This is the same code, it works fine locally, but not remotely. I tried to set up an error report, but it still does not give me any errors, just a blank white screen.

EDIT ---------- Code:

    $firstname = $phone = $email = $picture = $sqlcon = "";
    $firstnameErr = $phoneErr = $emailErr = $pictureErr = $sqlErr = $filterErr = "";
    $statusmsg = "";
    $newpicture = $registered = "false";

    if ($_SERVER["REQUEST_METHOD"] == "POST") {

        // If the user has not entered a firstname and has not entered details previously
        if ((empty($_POST["firstname"])) && empty($_POST["hfirst"])) {

            $firstnameErr = "Firstname is required for submission";
        }
        else {

            if (!empty($_POST["firstname"])) {

                $firstname = $_POST["firstname"];
            }
            else {

                $firstname = $_POST["hfirst"];
            }

            if (!preg_match("/^[a-zA-Z ]*$/", $firstname)) { 

                $firstnameErr="Please ensure you have entered only characters for your first name";
            }
        }

        // If the user has not entered a phone number and has not entered details previously
        if ((empty($_POST["phone"])) && (empty($_POST["hphone"]))) {

            $phoneErr = "Please ensure you have entered a phone number"; 
        }
        else {

            if (!empty($_POST["phone"])) {

                $phone = $_POST["phone"];
            }
            else {

                $phone = $_POST["hphone"];
            }

            if (!is_numeric($phone)) {

                $phoneErr = "Please ensure you have entered a valid phone number";
            }
        }

        if ((empty($_POST["email"])) && (empty($_POST["hemail"]))) {

            $emailErr = "Please ensure you have entered your email address";
        }
        else {

            if (!empty($_POST["email"])) {

                $email = $_POST["email"];
            }
            else {

                $email = $_POST["hemail"];
            }

            if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email)) {

                $emailErr = "Please ensure you have entered a valid email address";
            }
        }

        if ((empty($_FILES["file"]["name"])) && (empty($_POST["hfile"]))) {

            $pictureErr = "Please ensure you have selected a picture to upload";
        }
        else {

            if (!empty($_FILES["file"]["name"])) {

                if ($_FILES["file"]["size"] > 1048576) {

                        $pictureErr = "The maximum size for a picture is 1mb";
                }
                else {

                    // Ensure the user has selected a file of accepted type
                    $temp = explode(".", $_FILES["file"]["name"]);
                    $ext = end($temp);
                    $allowedExt = array ("gif", "JPEG", "jpg", "png", "JPG");

                    if (!in_array($ext, $allowedExt)) {

                        $pictureErr = "Please ensure you have uploaded an image file";                              

                    }
                }

                $newpicture = "true";
                $picture = $_FILES["file"]["name"];

            }
            else {

                $picture = $_POST["hpicture"];
            }
        }

        $sqlcon = mysqli_connect("localhost", "USER", "PASS", "personneldb");

        if (mysqli_connect_errno()) {

            $sqlErr = "Could not connect to database";
            mysqli_close($sqlcon);
        }

        if ($newpicture == "true") {

            if (!move_uploaded_file($_FILES["file"]["tmp_name"], "./upload/".$_FILES["file"]["name"])) {

                $pictureErr = "File could not be uploaded";
            }
        }

        if ((empty($firstnameErr)) && (empty($emailErr)) && (empty($phoneErr)) && (empty($pictureErr == "")) && (empty($sqlErr == ""))) {

            mysqli_query($sqlcon, "INSERT INTO test2Details(Firstname, Phone, Email, ImageName)
            VALUES ('$firstname', '$phone', '$email', '$picture')");

            // Display status message
            $statusmsg = "Success! Your details and picture have been uploaded and stored"; 


        }

        if ((!empty($firstname)) && (!empty($phone)) && (!empty($email)) && (!empty($picture))) {

            $registered = "true";
        }
        else {

            $registered = "false";
        }


    }
+4
source share
3 answers

This will allow showing errors on your server, but remember that it is not recommended to use this in the production process, and not in the PHP file, this configuration should be installed in php.ini

ini_set('display_startup_errors',1); 
ini_set('display_errors',1);
error_reporting(-1);

For more information you can find:

+6

:

  • $_SERVER["REQUEST_METHOD"]: , , , , isset($_POST)

  • ?, , ?

  • PHP, , , : php -i | grep error_log,

  • , /var/log/SERVER (SERVER lighttpd, apache, nginx, httpd,... )

ini_set error_reporting

0

, , !

0

Source: https://habr.com/ru/post/1535357/


All Articles