Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ช่วยด้วยครับ Insert ไม่ได้ซักที คือจะรับ TextFile เข้ามาแล้วมาเช็คกับ Table ผมถ้าเลขไม่ตรงกัน ก็ให้ทำการ Insert เพิ่มหนะครับ



 

ช่วยด้วยครับ Insert ไม่ได้ซักที คือจะรับ TextFile เข้ามาแล้วมาเช็คกับ Table ผมถ้าเลขไม่ตรงกัน ก็ให้ทำการ Insert เพิ่มหนะครับ

 



Topic : 002801

Guest




คือจะรับ TextFile เข้ามาแล้วมาเช็คกับ Table ผมถ้าเลขไม่ตรงกัน ก็ให้ทำการ Insert เพิ่มหนะครับ
while ($row = mysql_fetch_array ($result)) {

for ($i =0; $i<count($fcontents);$i++) {
if (ereg ("\"([0-9]+)\"", $fcontents[$i], $regs)) {
if ($regs[1] != $row["dept_code"] and $row["dept_code"] != $regs[1]) {
echo $regs[1]."!=".$row["dept_code"]."<br>";
} else if ($regs[1] == $row["dept_code"] and $row["dept_code"]==$regs[1]) {
//echo $regs[1]."==".$row["dept_code"]."<br>";
} else {
echo "bingo$regs[1].";
}
} // End if ereg
} // End Loop Count
} // End While Loop

ผมเช็ค if ยังไงก้หาไม่เจอครับตัวที่ไม่เท่ากันหนะครับ


Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 5 ก.พ. 2548 18:38:49 By : เจ View : 3041 Reply : 2
 

 

No. 1

Guest


สร้างตารางดังนี้ คุณจะสร้างเองหรือไม่ก็ใช้ไฟล์ create_db_tbl.php เป็นตัวช่วยสร้างก็ได้ครับ
1. tbl_test ในฐานข้อมูล test ซึ่งประกอบด้วยฟิลด์
- id ประเภทฟิลด์ int(5) เป็นคีย์หลัก
***********************************************แค่นี้ก็ลองรันไฟล์ test.php ดู แล้วคุณจะรู้คำตอบ
***หมายเหตุ : กรณีนี้ใช้ได้กับคีย์ที่เป็นคีย์หลักได้ถูกต้องแม่นยำ ******

*****************************************************************************************************************
ไฟล์สร้างฐานข้อมูล create_db_tbl.php
<?php
$conn=mysql_connect("localhost","","");
$chkdb=mysql_select_db("test");

//ตรวจสอบว่ามีฐานข้อมูลชื่อ test และตารางชื่อ tbl_test หรือไม่
if($chkdb){
//ถ้ามีฐานข้อมูล test อยู่แล้ว ให้สร้างตาราง tbl_test โดยประกอบด้วยฟิลด์ id ซึ่งเป็นคีย์หลัก
$chktbl=mysql_query("create table tbl_test(id int(5) not null,primary key(id));");
if($chktbl){
echo "สร้างตาราง tbl_test สำเร็จ<br>";
}else{
//แสดงว่ามี tbl_test อยู่ก่อนแล้ว
echo "สร้างตาราง tbl_test ไม่สำเร็จ อาจเป็นได้ว่ามี ตาราง tbl_test อยู่ก่อนแล้ว...<br>";
}
}else{
//ถ้ายังไม่มีฐานข้อมูลให้สร้างฐานข้อมูลใหม่ ชื่อ test
if(mysql_query("create database test;")){
echo "สร้างฐานข้อมูล test สำเร็จ<br>";
}else{
echo "สร้างฐานข้อมูล test ไม่สำเร็จ<br>";
}
mysql_select_db("test");
//และสร้าง tbl_test ด้วย
if(mysql_query("create table tbl_test(id int(5) not null,primary key(id));")){
echo "สร้างตาราง tbl_test สำเร็จ";
}else{
echo "สร้างตาราง tbl_test ไม่สำเร็จ";
}
}
//สิ้นสุดการตรวจสอบ ฐานข้อมูลและตาราง

mysql_close($conn);
?>

******************************************************************************************************
ไฟล์ทดสอบ test.php

<?php
//ไฟล์ตัวอย่าง
$conn=mysql_connect("localhost","","");
mysql_select_db("test");

$sql="select * from tbl_test;";
$result=mysql_query($sql);
$nrow=mysql_num_rows($result);

$chkyes=0;

$pathfile="./data.txt";
echo "<b>ชื่อและที่อยู่ไฟล์ =>".$pathfile."</b><hr>";
$arrfile=file($pathfile);
echo "ข้อมูลจาก textfile มี ".count($arrfile). " บรรทัด<br>";

for($i=0;$i<count($arrfile);$i++)//start for *
{
echo "<b><font color='#ff00ff'>บรรทัดที่ ".($i+1)."</font></b> มีข้อมูลเป็นดังนี้ => ".$arrfile[$i]."<br>";
echo "แยกบรรทัดที่ ".($i+1)." โดยใช้เครื่องหมาย \",\" ได้ข้อมูลดังนี้<br>";
//แยกไฟล์ในบรรทัดที่ i+1 ด้วยเครื่องหมาย ","
$datafile=explode(",",$arrfile[$i]);
for($j=0;$j<count($datafile);$j++){//start for **
echo $datafile[$j]."<br>";

//นำข้อมูลที่ได้ไปเปรียบเทียบในตาราง tbl_test
if($nrow>=1){//start if *

while($db=mysql_fetch_array($result))//start while
{
if($datafile[$j]==$db["id"]){//start if **
$chkyes+=1;
}//end if **
}//end while

//ถ้าข้อมูลใน textfile ไม่มีในตาราง ให้ insert
if($chkyes==0){
mysql_query("insert into tbl_test values('$datafile[$j]');");
}else{
$chkyes=0;//กำหนดค่าเริ่มต้นเป็น 0 เพื่อนำไปเช็คเงื่อนไขต่อไป
}
}else{
//ถ้าไม่มีข้อมูลในตารางเลยให้เพื่มข้อมูลใน textfile เข้าไปทั้งหมด
mysql_query("insert into tbl_test values('$datafile[$j]');");
}//end if *


}//end for **
echo "*** จบบรรทัดที่ ".($i+1)." ***<hr>";
}//end for *
echo "<font color='#ff0000'>จบการอ่านข้อมูลจาก textfile</font><hr>";

//อ่านข้อมูลในตาราง tbl_test มาแสดง
$showtbl=mysql_query("select * from tbl_test order by id asc;");
echo "<font color='#ff00ff'>".str_repeat("*",100)."</font><br><font color='#0000ff'>เป็นส่วนแสดงข้อมูลจากตาราง tbl_test ...<br>";
echo "ฟิลด์ id <br>";
while($list=mysql_fetch_array($showtbl))//start while *
{
echo $list["id"]."<br>";
}//end while *
echo "</font><font color='#ff00ff'>".str_repeat("*",100)."<br>";
echo str_repeat("*",100)."</font><br>";
echo "<font color='#ff0000'>.:: ลองสังเกตุว่า ถ้ามีข้อมูลในแต่ละบรรทัดซ้ำกันหรือซ้ำกับข้อมูลในตารางแล้วจะไม่บันทึกข้อมูลที่ซ้ำกันแต่ถ้าหากยังไม่มีข้อมูลในตารางก็จะนำข้อมูลใหม่ไป insert เข้าในตารางครับ :D</font>";

mysql_close($conn);
?>

*************************************************
ไฟล์ textfile => data.txt

1,2,3,4

** ข้อมูลขั้นด้วย เคื่องหมาย "," นะครับ


ลองคัดลอกแต่ละส่วนไปทดสอบดูครับ






Date : 7 ก.พ. 2548 08:58:41 By : noom_programmer
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP & MySQL Tutorial</title>
</head>
<body>
<?
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "INSERT INTO customer ";
$strSQL .="(CustomerID,Name,Email,CountryCode,Budget,Used) ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["txtCustomerID"]."','".$_POST["txtName"]."','".$_POST["txtEmail"]."' ";
$strSQL .=",'".$_POST["txtCountryCode"]."','".$_POST["txtBudget"]."','".$_POST["txtUsed"]."') ";
$objQuery = mysql_query($strSQL);
if($objQuery)
{
echo "Save Done.";
}
else
{
echo "Error Save [".$strSQL."]";
}
mysql_close($objConnect);
?>
</body>
</html>




Date : 2009-04-26 09:46:57 By : webmaster
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยด้วยครับ Insert ไม่ได้ซักที คือจะรับ TextFile เข้ามาแล้วมาเช็คกับ Table ผมถ้าเลขไม่ตรงกัน ก็ให้ทำการ Insert เพิ่มหนะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่