首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将userID传入booking表

将userID传入booking表
EN

Stack Overflow用户
提问于 2015-04-28 18:38:36
回答 1查看 282关注 0票数 0

我有一个链接到预订表的用户表,这样我就可以知道哪些用户已经进行了哪些预订。我曾尝试将用户表与预订表连接在一起,但没有成功。我也尝试过传递会话userID,但同样不起作用。我的PHP代码如下所示,我现在正在尝试传递这些代码。

代码语言:javascript
复制
	<?php
		include "config.php"; 
		
		//Booking point
		if(isset($_POST['booking']))
		{
			//get values for variables
			$pitchID = $_POST['pitchID'];
			$start_date = $_POST['start_date'];
			$start_hour = $_POST['start_hour'];
			$end_hour = $_POST['end_hour'];
			$booking_age = $_POST['booking_age'];
			$pitch_size = $_POST['pitch_size'];
			$light_tokens = $_POST['light_tokens'];
			
			$q = $db->prepare("SELECT * 
							  FROM booking  
							  LEFT JOIN user 
							  ON booking.userID=user.userID");
			$query = $q-> execute();
			
				if($query)
				{
					$q = $db->prepare("INSERT INTO booking SET pitchID = ?, start_date = ?, start_hour = ?, end_hour = ?, booking_age = ?, pitch_size = ?, light_tokens = ?");
					$query = $q->execute(array($pitchID,$start_date,$start_hour,$end_hour,$booking_age,$pitch_size,$light_tokens));
					$count = $q->rowCount();
					
					if($count == 1){
						echo "Your booking has been made";
						header("Location:home2_template.html");
						return; 
					}else {
						echo "Fail";
					}
				} else {
					echo"Booking already exists";
				}
		}
	?>

EN

回答 1

Stack Overflow用户

发布于 2015-04-28 19:46:13

我在系统的login部分添加了会话变量,然后从那里传递它。

下面的登录部分:

代码语言:javascript
复制
<?php
	include "config.php"; 
	if(isset($_POST['submit'])){

	$username = $_POST['username']; 
	$password = $_POST['password'];
	
	$q = $db->prepare("SELECT * FROM user WHERE username = ? AND password = ?");
	$query = $q->execute(array($username, $password));
	while($dbRow = $q->fetch(PDO::FETCH_ASSOC)) {
		$userID = $dbRow['userID'];
	}
	$count = $q->rowCount();
	if($count == 1){
		session_start(); 
		$_SESSION['userID'] = $userID; 
		header("Location:home2_template.html"); 
		return;
	}else{
		echo "You have entered an incorrect login/password";
		}
	}
?>

我还删除了PHP代码中的联接,并以下面的代码结束。它通过了我的userID,但对于任何正在查看它的人来说,这段代码中仍然存在错误。我必须在页面的顶部声明变量userID,然后在prepare语句中再次声明。

代码语言:javascript
复制
<?php 
session_start(); 
 $userID = $_SESSION['userID']; 
?>

代码语言:javascript
复制
<?php
		include "config.php"; 
		echo $userID; 
		//Booking point
		if(isset($_POST['booking']))
		{
			//get values for variables
			$pitchID = $_POST['pitchID'];
			$start_date = $_POST['start_date'];
			$start_hour = $_POST['start_hour'];
			$end_hour = $_POST['end_hour'];
			$booking_age = $_POST['booking_age'];
			$pitch_size = $_POST['pitch_size'];
			$light_tokens = $_POST['light_tokens'];
			
			$q = $db->prepare("INSERT INTO booking SET pitchID = ?, start_date = ?, start_hour = ?, end_hour = ?, booking_age = ?, pitch_size = ?, light_tokens = ?, userID='$userID'");
			$query = $q->execute(array($pitchID,$start_date,$start_hour,$end_hour,$booking_age,$pitch_size,$light_tokens));
			
			$count = $q->rowCount();
				if($count == 0)
				{
					echo "Your booking has been made";
					header("Location:home2_template.html");
					return; 
				}else {
					echo "That booking already exists";
				}
		}
	
	?>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29917098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档