PHP คะ อยากให้อ่านไฟล์ทีละบรรทัดอ่าคะ แล้วเพิ่มใน Databaseคะ

เริ่มโดย Desigh008, 03 มิถุนายน 2010, 13:52:10

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

Desigh008

เป็น ไฟล์ที่อยากให้ insert ใน db อ่าคะ customer.txt

TITLE DID 789 Markup course
GROUP 2
98216930,Miss.Alex Franco
87216931,Mr.Geot Kiad
98216930,Miss.Alex Franco
87216931,Mr.Geot Kiad
...


แต่ตอนนี้ที่ทำได้ก็คือมันอ่านรวดเดียวจบเลย คือความต้องการแค่ต้อง ID ข้างหน้าแล้วเก็บลงในอาร์เรย์อ่าคะ

      <?
        $strFileName = "customer.txt";
        $objFopen = fopen($strFileName, 'r');
       
       
        if ($objFopen) {
           
            while (!feof($objFopen)) {
                $file = fgets($objFopen);
               
                if(strpos($file,"TITLE")) {
                    $course_id=substr($file,6,8);
                    $course_id = str_replace(" ", "", $course_id);
                    echo $course_id."<br>";
                   
                }
                if(strpos($file,"GROUP")) {
                    echo substr($file,7);
                    $course_group=substr($file,7);
                }
                $file=strtok($file,"*");
                $pattern_id= "[4-9][[:digit:]]*";
                $string=substr($file, 0,8);
             
                if(ereg($pattern_id,$string)) {
                    $cus_id=substr($file,0,8);
    importRegisterList($cus_id,$course_id,$course_group);
                   
                    // คือตรงนี้เปรียบเทียบเอาแค่ตัวเลขมาเฉยๆๆคะ แต่ผลลัพธ์มันไม่อ่านทีละบรรทัด อ่านรวดเดียวจบเลย เลยทำให้
//function   importRegisterList ทำครั้งแรกครั้งเดียวเองอ่าคะ
                   
                }
               
            }
           
            fclose($objFopen);
           
        }
         
        ?>
       
        <?
        function importRegisterList($cus_id,$course_id,$course_group){
$connect_db= mysqli_connect("localhost","root","1234") or die('Error connecting to mysql');
        mysqli_select_db( $connect_db,"mydatabase");
        if(!$connect_db) {
            echo "Cannot connect to databse <br>";
            exit;


}
$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,``) VALUES ('{$course_id}','{$course_group}','{$std_id}','');";
$result= mysqli_query($connect_db,$sql);
mysqli_close($connect_db);}


?>


อยากให้มัน เพิ่มลง ใน database อ่าคะ ใครแนะนำช่วยทีนะคะ
อยากให้ เก็บแค่ DID789,2,98216930 แค่นี้อ่าคะแต่ตอนนี้ที่ทำ ทำแค่อันแรกอันเดียว คือข้อมูลแรกแค่อันเดียวเอง อยากให้มัน  insert ลงทั้งหมดในไฟล์เลยอ่าคะ

supachet2526

<?php

$filename 
"customer.txt";
$handle fopen($filename"r");
$contents fread($handlefilesize($filename));
fclose($handle);
$data split("\n",$contents);//ตัดแต่ละบันทัดมาใส่  array
$i=0;
foreach(
$data as $key => $value){ // loop array


if($i>1){ // สร้างเงื่อนไขถ้าเป็นบันทัดที่ 0-1 จะไม่เอาข้อมูล
$cus_id "";
$cus_id split(",",$value);// แยก 98216930=$cus_id[0] ,Miss.Alex Franco=$cus_id[1] ด้วย comma

importRegisterList($cus_id[0],$course_id,$course_group);
}
$i++;
}



        
        
       
      
        
       
        function 
importRegisterList($cus_id,$course_id,$course_group){
$connect_dbmysqli_connect("localhost","root","1234") or die('Error connecting to mysql');
        
mysqli_select_db$connect_db,"mydatabase");
        if(!
$connect_db) {
            echo 
"Cannot connect to databse <br>";
            exit;
 

}
$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,``) VALUES ('{$course_id}','{$course_group}','{$std_id}','');";
 $resultmysqli_query($connect_db,$sql);
 mysqli_close($connect_db);}


?>

ลองดูครับน่าจะถูกนะ  :wanwan003:
[direct=https://www.webunique.in.th]รับเขียนเว็บไซต์ [/direct]
[direct=https://www.webunique.in.th]บริษัทรับออกแบบเว็บไซต์ [/direct]

[direct=https://www.baansecondhand.com]ขายบ้านมือสอง[/direct]

ถ้าคุณลงมือทำในสิ่งที่คุณสนใจอยู่เสมอ อย่างน้อยจะมีคนคนหนึ่งที่พอใจ

supachet2526

อ้างถึงจาก: supachet2526 ใน 03 มิถุนายน 2010, 15:33:05
<?php

$filename 
"customer.txt";
$handle fopen($filename"r");
$contents fread($handlefilesize($filename));
fclose($handle);
$data split("\n",$contents);//ตัดแต่ละบันทัดมาใส่  array
$i=0;
foreach(
$data as $key => $value){ // loop array


if($i>1){ // สร้างเงื่อนไขถ้าเป็นบันทัดที่ 0-1 จะไม่เอาข้อมูล
$cus_id "";
$cus_id split(",",$value);// แยก 98216930=$cus_id[0] ,Miss.Alex Franco=$cus_id[1] ด้วย comma

importRegisterList($cus_id[0],$course_id,$course_group);
}
$i++;
}



        
        
       
      
        
       
        function 
importRegisterList($cus_id,$course_id,$course_group){
$connect_dbmysqli_connect("localhost","root","1234") or die('Error connecting to mysql');
        
mysqli_select_db$connect_db,"mydatabase");
        if(!
$connect_db) {
            echo 
"Cannot connect to databse <br>";
            exit;
 

}
$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,``) VALUES ('{$course_id}','{$course_group}','{$std_id}','');";
 $resultmysqli_query($connect_db,$sql);
 mysqli_close($connect_db);}


?>

ลองดูครับน่าจะถูกนะ  :wanwan003:
<?php

$filename 
"customer.txt";
$handle fopen($filename"r");
$contents fread($handlefilesize($filename));
fclose($handle);
$data split("\n",$contents);//ตัดแต่ละบันทัดมาใส่  array
$i=0;
foreach(
$data as $key => $value){ // loop array

if($i==0){
//บันทัดแรกแยก id
$c_id str_replace("TITLE","",$data[0]);
$c_id split(" ",$c_id);
$c_id trim($c_id[0].$c_id[1].$c_id[2]);



}
if($i==1){
//บันทัด 2 แยก group
$group $c_id str_replace("GROUP","",$data[1]);
$group trim($group);

}


if($i>1){ // บันทัดที่ 2 ขึ้นไป
$cus_id "";
$cus_id split(",",$value);// แยก 98216930=$cus_id[0] ,Miss.Alex Franco=$cus_id[1] ด้วย comma

//importRegisterList($c_id,$group,$cus_id[0]);
}
$i++;
}



        
        
       
      
        
       
        function 
importRegisterList($cus_id,$course_id,$course_group){
$connect_dbmysqli_connect("localhost","root","1234") or die('Error connecting to mysql');
        
mysqli_select_db$connect_db,"mydatabase");
        if(!
$connect_db) {
            echo 
"Cannot connect to databse <br>";
            exit;
 

}
$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,``) VALUES ('{$course_id}','{$course_group}','{$std_id}','');";
 $resultmysqli_query($connect_db,$sql);
 mysqli_close($connect_db);}


?>


แก้ไขใหม่ครับพอดีอ่านไม่ครับ  :wanwan003: :wanwan003: :wanwan003:
[direct=https://www.webunique.in.th]รับเขียนเว็บไซต์ [/direct]
[direct=https://www.webunique.in.th]บริษัทรับออกแบบเว็บไซต์ [/direct]

[direct=https://www.baansecondhand.com]ขายบ้านมือสอง[/direct]

ถ้าคุณลงมือทำในสิ่งที่คุณสนใจอยู่เสมอ อย่างน้อยจะมีคนคนหนึ่งที่พอใจ

Desigh008

ขอบพระคุณอย่างสูงงนะคะ
แต่มัน แอดข้อมูลเข้าแค่คนเดียวเองอ่าคะ คนที่สองมันไม่ยอมแอดเข้าไปอ่าคะ
ทำกี่ที ก็จะมีคนแรกเท่านั้นที่โดนแอดอ่าคะ

รบกวนช่วยหน่อยนะคะ
ขอบคุณมากคะ

siamjung

@ ดูจาก function  importRegisterList ของคุณนี่อันตรายอย่างแรงนะครับ

คือเรียก function ทีนึงก็ connect db ทีนึง ถ้ามีเป็น 100 แถวไม่ต้องลูปร้อยครั้งเพื่อ connect db เหรอครับ เอาการ connect และ ปิด connect mysql ไว้นอกฟังชั่นนะครับ เปลี่ยนด่วน ไม่งั้น mysql พัง!

---------------------------------------------------

@ ในแต่ละแถวไฟล์ คุณใช้อะไรคั่นค่า id กับ custormer name หละครับ ใช้เครื่องหมาย , (คอมม่า) แค่นี้อะเหรอ

ถ้าใช่ก็เขียนให้มันง่ายกว่านี้ก็ได้คับ ผมไม่ได้อ่านของคุณโดยละเอียดนะ เอาเป็นแนวทางเอาแล้วกันครับ

ตัวอย่างนะ เขียนสดๆให้แต่ไม่ได้เทส ลองเอาไปปรับอีกทีครับ

// connect db ซะ เขียนเพิ่มเอาเองนะครับ

$file = file('ไฟล์ทีเก็บข้อมูล.txt') ;
for($i=0;$i<count($file);$i++) {
  $explo = explode(",",$file) ;
  $id = $explo[0] ;
  $custname = $explo[1] ;

  mysql_query("INSERT INTO yourtable set field_id='$id', field_custname='$custname'") ;  // เปลี่ยนชื่อฟิลด์เอาให้ตรง

  // หรือจะเรียกใช้ function ก็ได้ แต่อย่าลืมเรื่องอย่าให้ใน function ที่จะใช้ไป connect db ซ้ำๆ เพราะมันอยู่ใน loop ของไฟล์แต่ละแถวอยู่ครับ!!!! ****
}

unset($file) ;

--------------------------------------------------------------

ประมาณนี้ครับ ลองดูครับ

งดรับงาน custom coding เตรียมพบบริการใหม่เร็วๆนี้

รับทำ PHP หรือปรับระบบระดับ bigbig เน้น cache คนเข้าแบบกระฉูดๆ <- สมัยก่อน

KendoUI,Ajax,Json,Custom Framework,JqueryUI,Adodb,Memcache,Smarty <- สมัยก่อน

[direct=https://www.youtube.com/watch?v=2LxLC93Q1rA]Indicator สัญญาณเทรดคมๆ[/direct]

[direct=https://play.google.com/store/apps/details?id=com.itwetrade.basictrade]App เรียนเทรดพื้นฐาน[/direct]

Desigh008

ขอบคุณคะที่แนะนำเรื่อง db ตอนนี้ก็เปลี่ยนแล้ว ไม่เรียกใช้ ใน function เดียวแล้ว
แต่ปัญหาก้เหมือนเดิมคะ มันแอดคนแรกเข้าไป db แค่คนเดียวเอง เช็คที่ function แล้ว ก็ถูกเรียกทุกครั้ง parameter ที่ส่งเข้ามาก็เปลี่ยนตลอด แต่ไม่เข้าใจว่าทำไม ถึงแอดลงไปใน db ได้แค่คนเดียวคะ ขอบคุณคะ

siamjung

ใน loop ลอง echo ค่าข้อมูลที่ยัดออกมาดูครับ ว่ามีค่าหรือป่าว

บางทีอาจเป็นข้อมูลผิดพลาดใน loop ก็ได้ครับ ทำระบบบางทีต้องเทส echo ค่าออกมาดู ว่าตัวแปรและข้อมูลครบถ้วนไหม

ลองดูครับ
งดรับงาน custom coding เตรียมพบบริการใหม่เร็วๆนี้

รับทำ PHP หรือปรับระบบระดับ bigbig เน้น cache คนเข้าแบบกระฉูดๆ <- สมัยก่อน

KendoUI,Ajax,Json,Custom Framework,JqueryUI,Adodb,Memcache,Smarty <- สมัยก่อน

[direct=https://www.youtube.com/watch?v=2LxLC93Q1rA]Indicator สัญญาณเทรดคมๆ[/direct]

[direct=https://play.google.com/store/apps/details?id=com.itwetrade.basictrade]App เรียนเทรดพื้นฐาน[/direct]

ThaNaButS


ColdMoney

อ้างถึงจาก: Desigh008 ใน 03 มิถุนายน 2010, 19:58:55
ขอบคุณคะที่แนะนำเรื่อง db ตอนนี้ก็เปลี่ยนแล้ว ไม่เรียกใช้ ใน function เดียวแล้ว
แต่ปัญหาก้เหมือนเดิมคะ มันแอดคนแรกเข้าไป db แค่คนเดียวเอง เช็คที่ function แล้ว ก็ถูกเรียกทุกครั้ง parameter ที่ส่งเข้ามาก็เปลี่ยนตลอด แต่ไม่เข้าใจว่าทำไม ถึงแอดลงไปใน db ได้แค่คนเดียวคะ ขอบคุณคะ

$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,``) VALUES ('{$course_id}','{$course_group}','{$std_id}','');";
echo $sql."<br>";

หลังบรรทัด $sql นี้ให้ echo ออกมาดูด้วย จากนั้น ก็ copy ทีล่ะบรรทัดไปใส่ phpmyadmin ให้มัน query โดยตรงเลยครับ ถ้ามันแสดง error ก็จะรู้ล่ะว่าเพราะอะไร

[direct=https://www.jumnong.com]รับจำนอง[/direct] [direct=https://burapasup.com]รับซื้อบ้าน[/direct] [direct=https://kadsan.com]สินค้าราคาถูก[/direct] [direct=https://checkcheap.com]เปรียบเทียบราคา[/direct]

bouy22

ไฟล์ test.txt

TITLE DID 789 Markup course
GROUP 2
98216930,Miss.Alex Franco
98216931,Miss.Alex Franco
98216932,Miss.Alex Franco
98216933,Miss.Alex Franco
98216934,Miss.Alex Franco
98216935,Miss.Alex Franco
98216936,Miss.Alex Franco
98216937,Miss.Alex Franco
98216938,Miss.Alex Franco
98216939,Miss.Alex Franco
982169310,Miss.Alex Franco
.....
982169999,Miss.Alex Franco






ไฟล์ Connect.php

<?php
error_reporting 
(E_ALL E_NOTICE);
$host="localhost";$username="root";$password="1234";$dbname="db_name";

$connect= @mysql_connect($host$username$password
or die('Connect Database Fail.'); 

$db=@mysql_select_db($dbname
or die('Database not found.');

mysql_db_query($dbname,"set names 'UTF8'");
?>






ไฟล์หลัก index.php

<?php
// การอ่านข้อมูลจาก Text File 
$filename="test.txt";
$data=file($filename);   //ข้อมูลที่ได้จากการใช้ Function file() จะได้ออกมาเป็น Array แต่ละบันทัดข้อมูลที่เก็บใน File คือ 1 ค่า index ของ Array

for($i=0;$i<count($data);$i++){  //วนรอบเพื่อแสดงผลขอ้มูล หา DID 
if(strpos($data[$i],"TITLE")) {
$course_id=substr($data[$i],8,9);
$course_id str_replace(" """$course_id);
}
if(strstr($data[$i],"GROUP")) {
$course_group=substr($data[$i],5);
}
// end for
echo "\$course_id = ".$course_id."<br/>";
echo "\$course_group = ".$course_group."<br/>";
echo "---------------------------------------------------------------------<br /><br /><br />";

for($i=2;$i<count($data);$i++){  //วนรอบเพื่อแสดงผลขอ้มูล
  $explo explode(",",$data[$i]) ;
  $id $explo[0] ;
  $custname $explo[0] ;
echo "\$sql=\"INSERT INTO tb_name VALUES ('$course_id','$course_group','$custname')\";<br />";
echo "\$result=mysql_db_query(\$dbname,\$sql);<br />";
}
?>






ผลที่ได้ (ไม่รู้ใช้อย่างที่ต้องการหรือป่าว :P :P)

$course_id = DID789
$course_group = 2
---------------------------------------------------------------------


$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216930')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216931')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216932')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216933')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216934')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216935')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216936')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216937')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216938')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','98216939')";
$result=mysql_db_query($dbname,$sql);
$sql="INSERT INTO tb_name VALUES ('DID789',' 2 ','982169310')";
$result=mysql_db_query($dbname,$sql);
สนใจทำธุรกิจ[direct=http://www.nongphojsin.com/]ไอศกรีมหนองโพ[/direct]คลิกเลย | ลงประกาศโฆษณา [direct=http://www.marukopost.com/]ประกาศฟรี[/direct] | [direct=http://www.uuppic.com/]เว็บฝากรูป[/direct] | [direct=http://www.jeedgame.com/]สคริปเกมแฟลช[/direct] |
ผลิตภัณฑ์เสริมอาหารออกซิเจนน้ำ [direct=http://www.adoxy-thai.com/]Adoxy[/direct]

Desigh008

ลองปริ้น sql ออกมาดูแล้วคะ sql ออกมาถูก เอาเข้าไปแอดแบบ manual ใน mysql ก็ถูกอ่าคะ
ค่าใน mysql ก็ถูกด้วยอ่าคะ

<?php

$filename 
"customer.txt";
$handle fopen($filename"r");
$contents fread($handlefilesize($filename));
$j=0;
fclose($handle);
 
$connect_dbmysql_connect("localhost","root","1234") or die('Error connecting to mysql');
         
mysql_select_db("mydatabase");
         if(!
$connect_db) {
            echo 
"Cannot connect to databse <br>";
            exit;
}
$data split("\n",$contents);//ตัดแต่ละบันทัดมาใส่  array
$i=0;
$course_id="";
$course_group="";
foreach(
$data as $key => $value){ // loop array

     
if(strpos($value,"TITLE")){
          
$course_id=substr($value,6,8);
          
$course_id str_replace(" """$course_id);
     }
 if(strpos($value,"GROUP")) {
      
$course_group=substr($value,7,2);
     }

    
if($i>9){ // สร้างเงื่อนไขถ้าเป็นบันทัดที่ 0-1 จะไม่เอาข้อมูล
$std_id "";
//$std_id = split(",",$value);// แยก 98216930=$cus_id[0] ,Miss.Alex Franco=$cus_id[1] ด้วย comma
$std_id explode(",",$value);

//echo $course_id." ".$course_group." ".$std_id[0]."<br>";
//echo $i."<br>";
$sql=importRegisterList($course_id,$course_group,$std_id[0]);

mysql_query($sql);
//echo $sql."<br>";
}
$i++;
}
        
        function 
importRegisterList($course_id,$course_group,$std_id){
$j++;
$sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('$course_id','$course_group','$std_id',' ');";
 echo $j."test importRegisterList ".$std_id." ".$course_id." ".$course_group."<br>";
return $sql;
 }
 
 mysql_close($connect_db);

?>



Pattern File อ่าคะ

**********************************************************
**********************************************************
**********************************************************
*DSD Format
*TITLE DND 105
*SECTION  
*GROUP 12
*
*
**********************************************************
90216902,นางสาวYYY XXX
92216903,นายนางสาวYYY XXX
44216904,นางสาวPPP OOO
33216905,นายBBB LLL
22216906,นางXXX PPP


ลองปริ้นค่ามาดู ก็ออกถูกทุกค่า ปริ้น sql มาดูก็ถูกคะ ไม่มี error รบกวน ท่านผู้ชำนาญช่วยด้วยคะ

INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('DND105','12','90216902',' ');
INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('DND105','12','92216903',' ');
INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('DND105','12','44216904',' ');
INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('DND105','12','33216905',' ');
INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('DND105','12','22216906',' ');

ปัญหาก็คือ มันแอดลง ใน DB แค่ record ของคนแรกคนเดียวเองอ่าคะ
ขอบคุณมากๆๆๆนะคะ

bouy22

มีดอกจันทร์ ด้วยก็ไม่บอก  :P :P ลองแก้โค๊ดดูแล้วกันครับคิดว่า ไม่ใช่ก็ใกล้เคียง
สนใจทำธุรกิจ[direct=http://www.nongphojsin.com/]ไอศกรีมหนองโพ[/direct]คลิกเลย | ลงประกาศโฆษณา [direct=http://www.marukopost.com/]ประกาศฟรี[/direct] | [direct=http://www.uuppic.com/]เว็บฝากรูป[/direct] | [direct=http://www.jeedgame.com/]สคริปเกมแฟลช[/direct] |
ผลิตภัณฑ์เสริมอาหารออกซิเจนน้ำ [direct=http://www.adoxy-thai.com/]Adoxy[/direct]

Desigh008

mysql ที่ปริ้นมาลองเอาไปแอด manual ใน PHPMyadmin ถูกอ่าคะ แต่ ไม่เข้าใจตรงที่ว่า ทำไม ในลูปมันไม่แอดให้อัตโนมัติอ่าคะ มันแอดแค่ record แรกเดียวเองอ่าคะ
ลองเช็คทุกอย่างแล้ว ทั้งค่าที่ได้ ก็ถูก ใครมีวิธีช่วยด้วยคะ

mean

ขอ Pattern ของไฟล์ เต็มๆ หน่อยครับสักสองกลุ่ม

แล้วขอ Output ที่ต้องการหน่อยครับ

พอดีผ่าน ด้านบนงงๆ ครับเห็นมี Pattern หลายอัน

เผื่อช่วยได้จะเขียนช่วยครับ


[direct=https://www.ireallyhost.com/]บริการโดเมน, เว็บโฮสติ้ง, SSL Certificate[/direct]
[direct=https://www.ireallyhost.com/ssl]บริการ SSL Certificate , HTTPS สำหรับเว็บไซต์[/direct]
[direct=https://www.ireallyhost.com/]บริการ Web Hosting Free! Domain name ตลอดอายุบริการ [/direct]
[direct=https://www.ireallyhost.com/domain]บริการ จดโดเมน, Free DNS Service, Domain Forwarding, จัดการโดเมนได้เอง Domain Control Panel[/direct

SL_master

ผมว่า ถ้า echo ถูก
อัพแบบ manual ถูก

ปัญหาอาจจะเกิดจาก ตารางของ sql
ลองดูครับว่าเผลอไปตั้ง primaryอะไร หรือเปล่า
[direct=http://www.ifcg.co.th]ที่ปรึกษาการเงิน[/direct]
[direct=http://www.ifcg.co.th]วางแผนการเงิน[/direct]

siamjung

ทำไม function นี้มันถึงมีการปิดฐานข้อมูลไปก่อนหละครับ ?? mysql_close($connect_db) ; ลองเอาออกดูนะครับ เพราะต้นไฟล์ connect db ไป แต่พอใน function ก็ปิดฐานข้อมูลไปซะเฉยๆ การปิดฐานข้อมูลก็แยกออกไปนอก loop นอก function เหมือนการ connect ด้วยครับ

function importRegisterList($course_id,$course_group,$std_id){
      $j++;
      $sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('$course_id','$course_group','$std_id',' ');";
       echo $j."test importRegisterList ".$std_id." ".$course_id." ".$course_group."<br>";
      return $sql;
       }
      
       mysql_close($connect_db); <-- ลองเอาออกดูครับ
      
      ?>
งดรับงาน custom coding เตรียมพบบริการใหม่เร็วๆนี้

รับทำ PHP หรือปรับระบบระดับ bigbig เน้น cache คนเข้าแบบกระฉูดๆ <- สมัยก่อน

KendoUI,Ajax,Json,Custom Framework,JqueryUI,Adodb,Memcache,Smarty <- สมัยก่อน

[direct=https://www.youtube.com/watch?v=2LxLC93Q1rA]Indicator สัญญาณเทรดคมๆ[/direct]

[direct=https://play.google.com/store/apps/details?id=com.itwetrade.basictrade]App เรียนเทรดพื้นฐาน[/direct]

Desigh008


**********************************************************
**********************************************************
**********************************************************
*DSD Format
*TITLE DND 105 Markup
*SECTION   
*GROUP 12
*
*
**********************************************************
52276902,นางสาวชุติมา สมใจ
52276903,นายชาติชาย สวัสดี
52276904,นางสาวฉะนันท ขำคม
52276905,นายมัถมา กำใจ
52276906,นางสาวนภัสสร แก้วกาญจน์
52276907,นายลิขิต พงศ์เจง
52276908,นางสาวรินี เพ็นฮั้น
52276909,นายจิตต์ ประเสริฐสัน
52276910,นายจุลพงษ์ ธนรักษ์

นี่คือ patter file จริงๆๆคะ แต่ชื่ออาจจะมีเยอะกว่านี้อ่า

ไปตั้ง primary ไว้ต้อง course_id,course_group อ่าคะ สองตัว ผิดไหมอ่าคะ

Desigh008

อ้างถึงจาก: siamjung ใน 03 มิถุนายน 2010, 22:38:19
ทำไม function นี้มันถึงมีการปิดฐานข้อมูลไปก่อนหละครับ ?? mysql_close($connect_db) ; ลองเอาออกดูนะครับ เพราะต้นไฟล์ connect db ไป แต่พอใน function ก็ปิดฐานข้อมูลไปซะเฉยๆ การปิดฐานข้อมูลก็แยกออกไปนอก loop นอก function เหมือนการ connect ด้วยครับ

function importRegisterList($course_id,$course_group,$std_id){
      $j++;
      $sql="INSERT INTO `mydatabase`.`registerlist` (`course_id` ,`course_group` ,`std_id` ,`withdraw`) VALUES ('$course_id','$course_group','$std_id',' ');";
       echo $j."test importRegisterList ".$std_id." ".$course_id." ".$course_group."<br>";
      return $sql;
       }
      
       mysql_close($connect_db); <-- ลองเอาออกดูครับ
      
      ?>

ลองเอาออกแล้วคะ แต่ก็ยังแอดแค่ record เดียวเองอ่าคะ หนูก็ไม่ทราบเป็นที่ตรงไหนด้วยอ่าคะ

siamjung

อ้างถึงจาก: Desigh008 ใน 03 มิถุนายน 2010, 22:42:18

ไปตั้ง primary ไว้ต้อง course_id,course_group อ่าคะ สองตัว ผิดไหมอ่าคะ

ปรกติ primary key ควรจะมี field เดียวหนะครับ ที่เหลือเค้ามักทำ index หรือ unique เอา เคยเจอคล้ายๆลักษณะนี้เหมือนกัน ยัดเข้าข้อมูลแล้วไม่เข้าเพราะมีปัญหากับ primary key

ลองสร้าง field ไว้อันดับแรกสุดเลย เป็น cust_autoid ชนิด int(6) แล้วก็กำหนดให้เป็น PRIMARY KEY พร้อม auto_increment ผ่าน phpmyadmin เพิ่มดูครับ

แล้วก็ยกเลิก primary key ของสองฟิลด์ก่อนหน้านั้นไป แล้วลองเทสอีกทีคับ
งดรับงาน custom coding เตรียมพบบริการใหม่เร็วๆนี้

รับทำ PHP หรือปรับระบบระดับ bigbig เน้น cache คนเข้าแบบกระฉูดๆ <- สมัยก่อน

KendoUI,Ajax,Json,Custom Framework,JqueryUI,Adodb,Memcache,Smarty <- สมัยก่อน

[direct=https://www.youtube.com/watch?v=2LxLC93Q1rA]Indicator สัญญาณเทรดคมๆ[/direct]

[direct=https://play.google.com/store/apps/details?id=com.itwetrade.basictrade]App เรียนเทรดพื้นฐาน[/direct]

Desigh008

อ้างถึงจาก: siamjung ใน 03 มิถุนายน 2010, 22:54:42
อ้างถึงจาก: Desigh008 ใน 03 มิถุนายน 2010, 22:42:18

ไปตั้ง primary ไว้ต้อง course_id,course_group อ่าคะ สองตัว ผิดไหมอ่าคะ

ปรกติ primary key ควรจะมี field เดียวหนะครับ ที่เหลือเค้ามักทำ index หรือ unique เอา เคยเจอคล้ายๆลักษณะนี้เหมือนกัน ยัดเข้าข้อมูลแล้วไม่เข้าเพราะมีปัญหากับ primary key

ลองสร้าง field ไว้อันดับแรกสุดเลย เป็น cust_autoid ชนิด int(6) แล้วก็กำหนดให้เป็น PRIMARY KEY พร้อม auto_increment ผ่าน phpmyadmin เพิ่มดูครับ

แล้วก็ยกเลิก primary key ของสองฟิลด์ก่อนหน้านั้นไป แล้วลองเทสอีกทีคับ

ลองทำตามแล้วอ่าคะ cust_autoid ชนิด int(6) เป็น INT ไม่ได้อ่าคะ เพราะต้องมีตัวอักษรด้วย เลยเปลี่ยนเป็น varchar(6)แทนอ่าคะ แต่ให้ตัวนี้ เป็น primary แทนอ่าคะ แค่ตัวเดียวเอง ลองแล้วคะ แต่ก็ยังไม่ไได้เหมือนเดิมอ่าคะ