sql >> Databáze >  >> RDS >> Mysql

Získejte aktuální ID uživatelů z databáze pro použití v nové tabulce

Co můžete udělat, je uložit uživatelská data do relace

$_SESSION['user_data'] = $user->data();

můžete jej přiřadit zpět k $data jakmile zaškrtnete $_SESSION['user_data'] je nastaven, jinak se znovu zeptejte na model.

A session_start() by měl být také v horní části každého souboru, pro který chcete držet relaci.

Takže něco jako:

Profil.php

<?php
session_start();
require 'core/init.php';

if(!$username = Input::get('user')) {
    Redirect::to('index.php');
    exit;
}

if(!isset($_SESSION['user_data'])){
    $user = new User($username);

    if(!$user->exists()) {
        Redirect::to(404);
        exit;
    }

    $_SESSION['user_data'] = $user->data();
}
?>

<h3><?php echo escape($_SESSION['user_data']->username); ?></h3>
<p>Membership No: <?php echo escape($_SESSION['user_data']->id); ?></p>
<p>Full name: <?php echo escape($_SESSION['user_data']->name); ?></p>
<p>Date of birth: <?php echo escape($_SESSION['user_data']->dob); ?></p>
<p>Location: <?php echo escape($_SESSION['user_data']->location); ?></p>
<p>Join date: <?php echo escape($_SESSION['user_data']->joined); ?></p>

oerder.php

<?php
session_start();
require 'core/init.php';

if(!isset($_SESSION['user_data'])){
    Redirect::to('index.php');
    exit;
}

$Band_id = mysql_real_escape_string($_POST['band']);
$user_id = $_SESSION['user_data']->id;

$sql = "INSERT INTO orders (band_id,user_id) VALUES('$Band_id', '$user_id')";
mysql_query ($sql, $linkme)
or die ("could not add to database");
?>

také byste měli přejít na PDO nebo mysqli.




  1. Laravel:Nedefinovaný index:ovladač

  2. SELECT minimální a maximální hodnotu z části tabulky v MySQL

  3. SQL DEFAULT Omezení pro vložení sloupce s výchozí hodnotou do tabulky SQL Server

  4. Doctrine2 ORM vyberte pro aktualizaci