2017-08-07 1 views
0

Ich habe diesen Code ausgearbeitet, um mit einiger Hilfe richtig hochzuladen und jetzt kann ich nicht den Benutzernamen in der Datenbank sehen, wenn ich das Bild hochladen. Muss ich etwas wie session_start() in die Upload-Datei einfügen? Ich denke, ich habe bereits meine Sitzung eingestellt, wann immer ich mich anmelde.Wie lade ich dieses Bild zusammen mit meinem Benutzernamen hoch?

Es könnte etwas mit meiner Frage falsch sein, glaube ich.

<?php 
session_start(); 

if(isset($_SESSION['user_id'])) { 
    header("Location: index.php"); 
} 

include_once 'dbconnect.php'; 

//set validation error flag as false 
$error = false; 

//check if form is submitted 
if (isset($_POST['signup'])) { 
    $first_name = mysqli_real_escape_string($con, $_POST['first_name']); 
    $last_name = mysqli_real_escape_string($con, $_POST['last_name']); 
    $username = mysqli_real_escape_string($con, $_POST['username']); 
    $email = mysqli_real_escape_string($con, $_POST['email']); 
    $password = mysqli_real_escape_string($con, $_POST['password']); 
    $cpassword = mysqli_real_escape_string($con, $_POST['cpassword']); 
    $quote = mysqli_real_escape_string($con, $_POST['quote']); 
    $who = mysqli_real_escape_string($con, $_POST['who']); 

    //name can contain only alpha characters and space 
     $sql = "SELECT * FROM users WHERE username = '".$username."'"; 
     $result = mysqli_query($con,$sql); 
     if(mysqli_num_rows($result)>=1){ 
      $error = true; 
      $username_error ='<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - That Username is already taken. Please use a different Username. 
          </div>'; 


     }else{ 
     } 
     $sql = "SELECT * FROM users WHERE email = '".$email."'"; 
     $result = mysqli_query($con,$sql); 
     if(mysqli_num_rows($result)>=1){ 
      $error = true; 
      $email_exist ='<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - That E-mail already in use. Please use a different E-mail. 
          </div>'; 


     }else{ 
     } 

    if (!preg_match("/^[a-zA-Z ]+$/",$first_name)) { 
     $error = true; 
     $firstname_error = '<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - First Name must contain only alphabets and space. 
          </div>'; 

    } 

    if (!preg_match("/^[a-zA-Z ]+$/",$last_name)) { 
     $error = true; 
     $lastname_error = '<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - Last Name must contain only alphabets and space. 
          </div>'; 

    } 

    if(!filter_var($email,FILTER_VALIDATE_EMAIL)) { 
     $error = true; 
     $email_error = '<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - Please Enter Valid E-mail. 
          </div>'; 
    } 
    if(strlen($password) < 6) { 
     $error = true; 
     $password_error = '<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - Password must be minimum of 6 characters. 
          </div>'; 
    } 
    if($password != $cpassword) { 
     $error = true; 
     $cpassword_error = '<div class="error-notice"> 
          <div class="oaerror danger"> 
          <strong>Uh oh!</strong> - Make sure your passwords match. 
          </div>'; 

    } 
    if (!$error) { 
     if(mysqli_query($con, "INSERT INTO users(first_name,last_name,username,email,password,quote,who) VALUES('" . $first_name . "', '" . $last_name . "', '" . $username . "', '" . $email . "', '" . md5($password) . "', '" . $quote . "', '" . $who . "')")) { 
      $successmsg = '<div class="error-notice"> 
          <div class="oaerror success"> 
          <strong>Wooh!</strong> - Successfully Registered! <a href="login.php">Click here to Login</a> 
          </div>'; 

     } else { 
      $errormsg = '<div class="error-notice"> 
          <div class="oaerror info"> 
          <strong>Hmm.</strong> - Error in registering...Please try again later. 
          </div>'; 


     } 
    } 
} 
?> 
+0

Wo setzen Sie '$ username'? Haben Sie in den Fehlerprotokollen nach Fehlern gesucht? –

+0

Ich habe nicht, wie suche ich nach diesen Fehlern? –

+0

Sie öffnen die Fehlerprotokolle für Ihren Webserver in einem Texteditor und suchen nach dem Fehler, der beim Ausführen der Abfrage generiert wurde. –

Antwort

0

Sie haben $ username nicht in Ihrem Code festgelegt. Ihre Select-Abfrage funktioniert nicht ordnungsgemäß. Zuerst müssen Sie $ username setzen. Sonst können Sie den Benutzernamen aus der Datenbank durch andere Details wie useremail, userID usw. abrufen.

+0

In meinem Code up, den ich direkt unter dem ersten aktualisiert habe, ist das was du meinst indem du den Benutzernamen definierst? –

+0

Nein, er meinte (wie ich es tat) "$ username" im ersten Codeblock zu definieren, der ein separates Skript zu sein scheint. –

+0

Ja, im zweiten Code definieren Sie $ username. Aber der zweite Code ist völlig anders als der erste. Nun, wo ist die Select-Abfrage und Tabelle, um Daten im zweiten Code anzuzeigen? –

Verwandte Themen