ให้แสดงค่าข้อมูลที่กรอก(ในหน้าเดิม) หลังจากตรวจสอบเสร็จข้อมูลเสร็จ
เมื่อทำการกรอกข้อมูลส่วนตัวที่หน้า taxInvoicePage จะมีการตรวจสอบข้อมูล โดยส่งไปที่หน้า taxInvoice
จะทำอย่างไร ให้ในหน้า taxInvoicePage แสดงข้อมูลส่วนตัวที่กรอก และข้อมูลอื่นๆที่เกี่ยวข้อง อย่างไรคะ ??
หน้า taxInvoicePage
Code (PHP)
<?php
@session_start();
?>
<body Onload="document.getElementById('myTable2').style.display = 'none';" >
<style type="text/css">
#btn_sent{
background-image:url(images/web/sent-btn.png);
width:73px;
height:28px;
border:0px;
}
.graytext { background:#CCCCCC; }
</style>
<div width="100%" align="center">
<div id="index_bottom">
<TABLE background="images/web/frame_content_bg.png" width="980px" align="center">
<TR align="left">
<TD align="left" valign="top">
<TABLE background="images/web/top_left_box.png" width="196px" height="17px" align="center">
<TR align="center">
<TD valign="top">
</TD>
</TR>
</TABLE>
<TABLE background="images/web/bg_left_box.png" width="196px" align="center" valign="top" height="250px">
<TR align="center" valign="bottom" height="15px">
<TD>
<font class="text_right_bar"><b>Manage Booking</b></font>
</TD>
</TR>
<TR align="center" valign="top">
<TD>
<img src="images/web/cut_left_box.png" width="185px">
</TD>
</TR>
<TR align="left" valign="top">
<TD style="padding-left:15px;">
<!--<div id="leftAboutContent" style="margin-top:-5px;"> </div>-->
<table>
<tr valign="top">
<td>
<ul style="margin:0px; padding:0px">
<?php
foreach ($manageBookingMenu as $manageBookingMenu)
{
if($manageBookingMenu["link"] == '/'.$manageBookingMenu["menuId"]){
echo "<b>".$manageBookingMenu["text"]."</b>";
}else{
echo "<b>".anchor($manageBookingMenu["link"], iconv('windows-874', 'UTF-8',$manageBookingMenu["text"]))."</b>";
}
if($manageBookingMenu["submanageBookingMenu"]){
echo "<ul>";
foreach ($manageBookingMenu["submanageBookingMenu"] as $smanageBookingMenu){
echo "<li>".anchor($smanageBookingMenu["link"], iconv('windows-874', 'UTF-8',$smanageBookingMenu["text"]));
echo "</li>";
}
// end subMenu
echo "</ul>";
}else{
echo "<br> <img src='images/web/leftLine.png' style='padding-top:5px; padding-bottom:5px; padding-right:10px;' >";
}
}
?>
</ul>
</td>
</tr>
</table>
</TD>
</TR>
</TABLE>
<TABLE background="images/web/bottom_left_box.png" width="196px" height="17px" align="center">
<TR align="center">
<TD>
</TD>
</TR>
</TABLE>
</TD>
<TD align="center" valign="top">
<TABLE width="720px" align="center">
<TR align="left" height="32px">
<TD valign="bottom" align="right" style="padding-right:10px;">
<TABLE>
<TR>
<TD>
<font class="text_right_bar"><b><?php echo $header ?></b></font> </TD>
</TR>
</TABLE> </TD>
</TR>
<TR align="left">
<TD>
<img style="padding-top: 5px; padding-bottom: 5px;" src="images/web/cut_content_box.png"><br> </TD>
</TR>
<TR align="left">
<TD height="357" valign="top">
<form style="margin-bottom: 0px;" name="taxInvoiceForm" id="taxInvoiceForm_id" method="post" >
<input type="hidden" name="__format" value="pdf" />
<input type="hidden" name="flightBookingSeq" id="flightBookingSeq_id" />
<table width="277" cellpadding="0" cellspacing="0" id="myTable1">
<tbody>
<tr>
<td width="125" height="26">
<font class="text_content">Booking No.</font> </td>
<td>
<input type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="bookingNo"> </td>
</tr>
<tr>
<td width="125">
<font class="text_content">Last Name</font> </td>
<td>
<input type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="lastName"> </td>
</tr>
<tr align="center">
<td width="125"> </td>
<td width="150">
<img onClick="javascript:checkBooking(document.forms['taxInvoiceForm'].bookingNo.value, document.forms['taxInvoiceForm'].lastName.value, 'taxInvoice',frmTaxInvoice)" style="border:0px none; cursor: pointer; padding-left: 10px;" src="images/web/sent-btn.png"> </td>
</tr>
</tbody>
</table>
</form>
<form id="frmTaxInvoice" method="post" action="" enctype="multipart/form-data" >
<table width="277" cellpadding="0" cellspacing="0" id="myTable2" >
<tbody >
<tr>
<td width="125" height="20" valign="top"><font class="text_content">Booking No.</font></td>
<td valign="top"><input readonly="readonly" type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="BookNo" class="graytext"
value="<? echo $bookNo; ?>"/></td>
</tr>
<tr>
<td height="10" valign="top"><font class="text_content">Name</font></td>
<td valign="top"><input readonly="readonly" type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="BookName" class="graytext" /></td>
</tr>
<tr>
<td height="10" valign="top"><font class="text_content">Flight Date</font></td>
<td valign="top"><input readonly="readonly" type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="BookDate" class="graytext" /></td>
</tr>
<tr>
<td height="40" valign="top"><font class="text_content">Address sent</font></td>
<td valign="top"><textarea name="addressSent" id="addressSent" cols="45" rows="5" style="width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;"></textarea></td>
</tr>
<tr>
<td width="125" height="24"><font class="text_content">Received from</font></td>
<td>
<input type="text" style="height: 13px; width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;" name="receivedFrom" id="receivedFrom"> </td>
</tr>
<tr>
<td width="125" height="96" valign="top"><font class="text_content">Received sent</font></td>
<td valign="top">
<textarea name="addressReceived" id="addressReceived" cols="45" rows="5" style="width: 150px; font-size: 11px; font-family: Arial; margin: 2px 0pt 2px 0px;"></textarea> </td>
</tr>
<tr align="center">
<td width="125"> </td>
<td width="150">
<input type="submit" id="btn_sent" value="" name="btn_sent" onclick="javascript:validate(
document.forms['frmTaxInvoice'].addressSent.value,
document.forms['frmTaxInvoice'].receivedFrom.value,
document.forms['frmTaxInvoice'].addressReceived.value, 'frmTaxInvoice')" style="border:0px none; cursor: pointer; padding-left: 10px;"/></td>
</tr>
</tbody>
</table>
</form>
</TD>
</TR>
<TR align="left">
<TD height="2"> </TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<TABLE background="images/web/frame_content_bottom.png" width="982px" height="19px">
<TR>
<TD>
</TD>
</TR>
</TABLE>
<div id="retReceipt" style="display:none;"></div>
</div>
</div>
<script>
function checkBooking($bookNo, $lastName, reportName){
if($bookNo != '' && $lastName != ''){
$("#retReceipt").load("index.php/taxInvoice/findBookingNo/"+$bookNo+"/"+$lastName, null, function(ret){
if(ret == 'false'){
alert('Booking No. not found on system.');
}else{
var receiptForm = document.getElementById('taxInvoiceForm_id');
receiptForm.method = 'POST';
document.getElementById('myTable2').style.display = '';
document.getElementById('myTable1').style.display = 'none';
}
});
}else{
alert('Can not print a tax invoice. Please provide the information required.');
}
return false;
}
function validate(){
}
</script>
</body>
หน้า taxInvoice
Code (PHP)
<?php
class taxInvoice extends Controller {
function taxInvoice()
{
parent::Controller();
}
function index()
{
}
function findBookingNo($bookNo, $lastName){
$this->load->helper('url');
$this->load->helper('file');
$bookingQuery = $this->db->query("select *,b.flight_booking_seq as bookSeq, b.booking_no as bookNo,
isnull(b.first_name,'')+' '+isnull(b.last_name,'') as bookName,
convert(varchar,b.booking_cre_dat,120) as bookingDate from ka_flight_booking b where b.booking_no = ? and b.last_name = upper(?)",Array($bookNo,$lastName));
$rows = $bookingQuery->row();
if($rows == NULL){
echo "false";
}else{
echo $rows->bookSeq ;
echo $rows->bookNo ;
echo $rows->bookName ;
echo $rows->bookingDate ;
}
}
}
?>
Tag : PHP, MySQL, Ms SQL Server 2005, HTML/CSS, JavaScript
Date :
2012-11-28 15:12:00
By :
Baitong_ch
View :
1551
Reply :
24
ถ้านำข้อมูลที่กรอกภายในหน้านั้นมาแสดง ก็กำหนดแบบนี้
Code (PHP)
var bookNo = $bookNo ;
document.getElementById('BookNo').value = bookNo;
แล้วถ้าต้องการนำข้อมูลที่ถูก select จากหน้าอื่นมาแสดงอีกหน้านึง
จะกำหนดอย่างไรคะ
แนะนำด้วยนะคะ
Date :
2012-11-29 11:04:24
By :
Baitong_ch
ลองทำตามเว็บนี้
http://www.w3schools.com/php/php_ajax_database.asp
ก็ยังไม่ส่งค่าเลยค่ะ
แนะนำด้วยคะติดปัญหาจริงๆ
Date :
2012-11-29 15:01:11
By :
Baitong_ch
ค้นหาด้วย booking no. และ lastname หรอครับ
ช่วย export เทเบิ้ลที่เกี่ยวข้องกับโค้ดชุดนี้มาให้ทดลองกันหน่อยครับ
จริงๆแล้วไม่ได้ยากอะไรเลยครับ เดี๋ยวจะลองช่วยดูครับ
Date :
2012-11-29 15:55:50
By :
sakuraei
ไม่รู้จะ export มาให้พี่ดูยังไง
เลยแคปหน้าจอมา
แล้วนี้คือไฟล์ที่ export ข้อมูลออกมาบางส่วนคะ
https://dl.dropbox.com/u/54417604/ka_flight_booking2555-11-29%2015-57-56.csv
Date :
2012-11-29 16:14:14
By :
Baitong_ch
คือติดปัญหาเรื่องให้นำข้อมูลไปแสดงอะคะ
พอกรอกข้อมูล ให้หน้า taxInvoicePage เสร็จก็จะไปตรวจสอบว่าจริงหรือไม่จริง ในหน้า taxInvoice ถ้าจริงก็ให้ส่งค่ากลับมาหน้า taxInvoicePage
พอลอง echo ออกมา ก็มีค่าที่จะนำไปแสดงนะคะ
แต่จะนำค่าที่ echo ออกมาไปใช้งานยังไงคะ
รบกวนพี่ด้วยนะคะ
Date :
2012-11-29 16:18:09
By :
Baitong_ch
ข้อมูลที่จะเอาใส่ช่อง flight date จะนำมาจากฟิลด์ไหนในตารางข้อมูลล่ะ booking_cre_dat หรือป่าวครับ
Date :
2012-11-29 17:16:18
By :
sakuraei
ค่ะ จากฟิลด์ booking_cre_dat
Date :
2012-11-29 17:18:09
By :
Baitong_ch
ลองดูน่ะครับ taxInvoicePage.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>https://www.thaicreate.com/php/forum/087377.html</title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="Unidentifier">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
</head>
<body>
<div id="searchContainer" style="display:block;width:500px;border:1px solid gray;padding:1em;">
Booking No. <input type="text" id="byBookNO" placeholder="..เลือกค้นหาด้วยรหัสการจอง" /><br />
Last Name   <input type="text" id="byLastName" placeholder="..เลือกค้นหาด้วยนามสกุลผู้จอง" /><br />
<input type="button" id="seachBTN" value="ค้นหา" />
</div>
<br /><br />
<div id="resultContainer" style="padding:2em;display:block;border:2px solid green;width:500px;">
Booking No. <input type="text" id="BookNO" /><br />
Name <input type="text" id="LName" /><br />
Flight date <input type="text" id="Fldate" /><br />
Address Sent <input type="text" id="Address" /><br />
</div>
<script>
$("#seachBTN").click(function(){
$.post("taxInvoice.php",{searchBookNo:$("#byBookNO").val() , searchLName:$("#byLastName").val() },function(data){
$("input#BookNO").val($(data).filter("#booking_no").text());
$("input#LName").val($(data).filter("#first_name").text());
$("input#Fldate").val($(data).filter("#booking_cre_dat").text());
$("input#Address").val($(data).filter("#address_1").text());
});
});
</script>
</body>
</html>
taxInvoice.php
<?php
include("connectdb.php");
$sql = "select * from flightTB where booking_no='{$_POST["searchBookNo"]}' or last_name='%{$_POST["searchLName"]}%' order by flight_booking_seq desc limit 1";
$res = mysql_query($sql) or die(mysql_error()."<br />$sql");
$data = mysql_fetch_assoc($res);
foreach($data as $key => $value){
echo "<div id=\"$key\">$value</div>\n";
}
?>
ข้อมูลจะผิดหรือถูกก็ขึ้นอยู่กับเงื่อนไขการคิวรี่ล่ะครับ
where booking_no='{$_POST["searchBookNo"]}' or last_name='%{$_POST["searchLName"]}%' ไปดูเอาเองน่ะครับ
ประวัติการแก้ไข 2012-11-29 20:04:36
Date :
2012-11-29 19:51:34
By :
sakuraei
ของพี่ผลลัพธ์ก็ออกปกติดีครับ ได้แก้ไขโค้ดหรือดัดแปลงหรือเปล่า
Date :
2012-11-30 09:31:08
By :
unidentifier
แก้ไขตรงหน้า taxInvoice อะคะ
Code (PHP)
<?php
class taxInvoice extends Controller {
function taxInvoice()
{
parent::Controller();
}
function index()
{
}
function findBookingNo($bookNo, $lastName){
$this->load->helper('url');
$this->load->helper('file');
$sql = $this->db->query('select * from ka_flight_booking where booking_no= ? and last_name= upper(?) order by flight_booking_seq desc limit 1');
$res = mysql_query($sql) or die(mysql_error()."<br />$sql");
$data = mysql_fetch_assoc($res);
foreach($data as $key => $value){
echo "<div id=\"$key\">$value</div>\n";
}
}
}
?>
Date :
2012-11-30 09:39:32
By :
Baitong_ch
1. ฟังก์ชั่น findBookingNo ถูกเรียกใช้ตอนไหนครับ ไม่เห็นเลย แค่สร้างเอาไว้เฉยๆ
มันต้องแบบนี้
$checkBooking = new taxInvoice();
$checkBooking->findBookingNo($_POST["searchBookNo"],$_POST["searchLName"]);
2.และแน่ใจแล้วเหรอที่ใช้ and เป็นตัวเชื่อมในเงื่อนไข
booking_no= ? and last_name= upper(?)
เพราะนั่นหมายความว่า ผู้ใช้ต้องป้อนข้อมูลสำหรับการค้นหาให้ถูกต้อง 100% (ใช้ = ไม่ได้ใช้ like '%' )
และป้อนแค่อย่างใดอย่างหนึ่งก็ไม่ได้ด้วย เพราะเชื่อมด้วย and
ประวัติการแก้ไข 2012-11-30 09:55:01
Date :
2012-11-30 09:50:12
By :
sakuraei
$sql = $this->db->query('select * from ka_flight_booking where booking_no= ? and last_name= upper(?) order by flight_booking_seq desc limit 1');
ไม่เห็นเอา $bookNo, $lastName ไปใช้ตรงไหนเลย
Date :
2012-11-30 10:05:57
By :
sakuraei
Code (PHP)
<?php
class taxInvoice extends Controller {
function taxInvoice()
{
parent::Controller();
}
function index()
{
}
function findBookingNo($bookNo, $lastName){
$this->load->helper('url');
$this->load->helper('file');
$sql = $this->db->query("select * from ka_flight_booking where booking_no= ? and last_name= upper(?) order by flight_booking_seq desc limit 1",Array($bookNo, $lastName));
$res = mysql_query($sql) or die(mysql_error()."<br />$sql");
$data = mysql_fetch_assoc($res);
foreach($data as $key => $value){
echo "<div id=\"$key\">$value</div>\n";
}
}
}
$checkBooking = new taxInvoice();
$checkBooking->findBookingNo($_POST["searchBookNo"],$_POST["searchLName"]);
?>
ประวัติการแก้ไข 2012-11-30 10:12:59
Date :
2012-11-30 10:11:02
By :
sakuraei
คลาสพวกนี้ไม่ได้เขียนเองใช่มั๊ย
เพราะน้องตองยังเรียกใช้ไม่ถูกเลย มันจึง error
พี่ไปทำงานก่อน ว่างๆแล้วจะกลับมาตอบน่ะ
Date :
2012-11-30 10:26:00
By :
sakuraei
คะพี่
เอาระบบเค้ามาพัฒนาต่ออะคะ
พวกคลาส ยังไม่เคยเขียนเลย แต่ก็ต้องมาทำ เลยมึนๆๆอยู่นี้อะคะพี่
ขอบคุณมากค่ะพี่
Date :
2012-11-30 10:28:24
By :
Baitong_ch
เอาคลาส Controller มาดูหน่อย
Date :
2012-11-30 10:49:01
By :
unidentifier
Controller.php
Code
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* CodeIgniter
*
* An open source application development framework for PHP 4.3.2 or newer
*
* @package CodeIgniter
* @author ExpressionEngine Dev Team
* @copyright Copyright (c) 2008 - 2010, EllisLab, Inc.
* @license http://codeigniter.com/user_guide/license.html
* @link http://codeigniter.com
* @since Version 1.0
* @filesource
*/
// ------------------------------------------------------------------------
/**
* CodeIgniter Application Controller Class
*
* This class object is the super class that every library in
* CodeIgniter will be assigned to.
*
* @package CodeIgniter
* @subpackage Libraries
* @category Libraries
* @author ExpressionEngine Dev Team
* @link http://codeigniter.com/user_guide/general/controllers.html
*/
class Controller extends CI_Base {
var $_ci_scaffolding = FALSE;
var $_ci_scaff_table = FALSE;
/**
* Constructor
*
* Calls the initialize() function
*/
function Controller()
{
parent::CI_Base();
$this->_ci_initialize();
log_message('debug', "Controller Class Initialized");
}
// --------------------------------------------------------------------
/**
* Initialize
*
* Assigns all the bases classes loaded by the front controller to
* variables in this class. Also calls the autoload routine.
*
* @access private
* @return void
*/
function _ci_initialize()
{
// Assign all the class objects that were instantiated by the
// front controller to local class variables so that CI can be
// run as one big super object.
$classes = array(
'config' => 'Config',
'input' => 'Input',
'benchmark' => 'Benchmark',
'uri' => 'URI',
'output' => 'Output',
'lang' => 'Language',
'router' => 'Router'
);
foreach ($classes as $var => $class)
{
$this->$var =& load_class($class);
}
// In PHP 5 the Loader class is run as a discreet
// class. In PHP 4 it extends the Controller
if (floor(phpversion()) >= 5)
{
$this->load =& load_class('Loader');
$this->load->_ci_autoloader();
}
else
{
$this->_ci_autoloader();
// sync up the objects since PHP4 was working from a copy
foreach (array_keys(get_object_vars($this)) as $attribute)
{
if (is_object($this->$attribute))
{
$this->load->$attribute =& $this->$attribute;
}
}
}
}
// --------------------------------------------------------------------
/**
* Run Scaffolding
*
* @access private
* @return void
*/
function _ci_scaffolding()
{
if ($this->_ci_scaffolding === FALSE OR $this->_ci_scaff_table === FALSE)
{
show_404('Scaffolding unavailable');
}
$method = ( ! in_array($this->uri->segment(3), array('add', 'insert', 'edit', 'update', 'view', 'delete', 'do_delete'), TRUE)) ? 'view' : $this->uri->segment(3);
require_once(BASEPATH.'scaffolding/Scaffolding'.EXT);
$scaff = new Scaffolding($this->_ci_scaff_table);
$scaff->$method();
}
}
// END _Controller class
/* End of file Controller.php */
/* Location: ./system/libraries/Controller.php */
Date :
2012-11-30 11:01:14
By :
Baitong_ch
ถ้าเป็น CodeIgniter ตอนเรียกข้อมูลให้อยู่ในรูปแบบอาร์เรย์ให้ใช้ row_array() น่าจะดีกว่า
<?php
class taxInvoice extends Controller {
function taxInvoice()
{
parent::Controller();
}
function index()
{
}
function findBookingNo($bookNo, $lastName){
$this->load->helper('url');
$this->load->helper('file');
$bookingQuery = $this->db->query("select * from ka_flight_booking where booking_no=? and last_name=upper(?) order by flight_booking_seq desc limit 1", array($bookNo, $lastName));
$data = $bookingQuery->row_array();
foreach($data as $key => $value){
echo "<div id=\"$key\">$value</div>\n";
}
}
}
$checkBooking = new taxInvoice();
$checkBooking->findBookingNo($_POST["searchBookNo"],$_POST["searchLName"]);
?>
ลองดูอีกครั้งน่ะครับ
Date :
2012-11-30 20:57:22
By :
sakuraei
ขอบคุณค่ะพี่ ตอนนี้ได้แล้วคะพี่
ต้องทำความเข้าใจอีกเยอะเลย ขอบคุณพี่มากคะ :)
Date :
2012-12-04 14:29:19
By :
Baitong_ch
Load balance : Server 02