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,027

HOME > PHP > PHP Forum > สอบถาม การ echo ข้อมูลใน loop for กับ while ค่ะ อยากให้ echo ในแต่ละรอบของ loop ค่ะ



 

สอบถาม การ echo ข้อมูลใน loop for กับ while ค่ะ อยากให้ echo ในแต่ละรอบของ loop ค่ะ

 



Topic : 126584



โพสกระทู้ ( 228 )
บทความ ( 0 )



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




สอบถาม พอจะเป็นไปได้ไหมค่ะ ใน loop while หรือ for ให้ echo ค่าแสดงออกมา ในแต่ละรอบของ loop ไม่อยากให้ วน loop ครบจำนวนแล้วค่อยแสดงค่ามาทีเดียว อะค่ะ เช่น

Code (PHP)
<?php

   for($i=0;$i<=10;$i++){
	
	echo $i."<br>";
}

?>


อยากให้ echo $i ทีละรอบของ loop เสร็จรอบหนึ่งก็ echo ออกมา => ไม่อยากให้ วน loop เสร็จแล้วค่อย echo มารอบเดียวทั้งหมดอะค่ะ

พอเป็นไปได้ไหมค่ะ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-02-26 11:31:19 By : sammam View : 1164 Reply : 8
 

 

No. 1



โพสกระทู้ ( 279 )
บทความ ( 0 )



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


น่าจะอยูุ่ที่การกำหนดเงื่อนไขครับ แต่ยังไม่ค่อยเข้าใจว่าจะใช้ทำอะไร ลองอธิบายอีกหน่อยครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-26 16:23:26 By : thesin18598
 


 

No. 2



โพสกระทู้ ( 228 )
บทความ ( 0 )



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : thesin18598 เมื่อวันที่ 2017-02-26 16:23:26
รายละเอียดของการตอบ ::
ใช้ Curl ในการ login web ค่ะ เช่นมี 3 เว็บ สมมติว่า สามารถ login ผ่านทุกเว็บ อยากให้ผลลัพธ์เป็น

loop 1 =============//http://www.test1.com
ให้ echo ค่าออกมา
web=http://www.test1.com
Login Success

พอถึง loop 2 =============//http://www.test2.com
ให้ echo ค่าออกมา
web=http://www.test2.com
Login Success

พอถึง loop 3 =============//http://www.test3.com
ให้ echo ค่าออกมา
web=http://www.test3.com
Login Success


คือ ถ้าครบ 1 loop ก็อยากให้ echo ค่าออกมาอะค่ะ แต่ตอนนี้ที่ทำ มันต้องรอให้ครบทั้ง 3 loop แล้ว ถึงจะ echo ค่าออกมาทีเดียว


Code (PHP)
 $arr = array("http://www.test1.com", "http://www.test2.com", "http://www.test3.com");
  foreach ($arr as $domain) {
        echo "web=$domain<br>";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_HEADER, 1);
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, "user=test&passwrd=001");
	curl_setopt($ch, CURLOPT_URL, "$domain?action=login");
	curl_exec($ch);
	$checklogin = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
        if($checklogin){
		echo "Can't Login<br>";
	    }else{
		echo "Login Success <br>";
	    }
		
     curl_close($ch);

	}	


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-26 19:36:37 By : sammam
 

 

No. 3



โพสกระทู้ ( 279 )
บทความ ( 0 )



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


แบบนี้ใช่ไหมครับ ส่ง array เข้าไปทีละตัว


Code (PHP)
function testFunction($frm)
{
	echo "web=$frm<br>";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_HEADER, 1);
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, "user=test&passwrd=001");
	curl_setopt($ch, CURLOPT_URL, "$frm?action=login");
	curl_exec($ch);

	$checklogin = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);

	       if($checklogin)
	       {
			echo "Can't Login<br>";
		   }else{
			echo "Login Success <br>";
		   }
		
	    curl_close($ch);

}
$arr = array("http://www.test1.com", "http://www.test2.com", "http://www.test3.com");

array_walk($arr,"testFunction");



ประวัติการแก้ไข
2017-02-26 20:15:41
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-26 20:15:23 By : thesin18598
 


 

No. 4



โพสกระทู้ ( 228 )
บทความ ( 0 )



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : thesin18598 เมื่อวันที่ 2017-02-26 20:15:23
รายละเอียดของการตอบ ::
ขอบคุณคร้าา แต่ยังไม่ได้ค่ะ พอ login สำเร็จ 1 เว็บ ยังไม่ echo ค่าออกมาค่ะ ต้องรอให้ครบทั้ง 3 เว็บถึงจะ echo ค่าทั้ง 3 เว็บออกมาทีเดียวค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-26 20:34:03 By : sammam
 


 

No. 5



โพสกระทู้ ( 279 )
บทความ ( 0 )



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


อันนี้เช็คจาก URL ก่อน คือ ถ้า URL มีตรงกับใน array แล้วค่อยส่งไปเช็คใน function อีกที

Code (PHP)
function testFunction($frm)
{
	echo "web=$frm<br>";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_HEADER, 1);
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, "user=test&passwrd=001");
	curl_setopt($ch, CURLOPT_URL, "$frm?action=login");
	curl_exec($ch);

	$checklogin = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);

	       if($checklogin)
	       {
			echo "Can't Login<br>";
		   }else{
			echo "Login Success <br>";
		   }
		
	    curl_close($ch);

}

$arr = array(
			 "http://www.test1.com", 
			 "http://www.test2.com", 
			 "http://www.test3.com"
			 );
/*array_walk($arr,"testFunction");*/

$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

	$countArr = count($arr);
	for($i=0; $i<$countArr; $i++)
	{
		switch ($arr[$i]) {
			case $actual_link:
				testFunction($actual_link);
				break;
		}
	}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-26 21:20:02 By : thesin18598
 


 

No. 6



โพสกระทู้ ( 738 )
บทความ ( 0 )



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


php อย่างเดียวน่าจะทำไม่ได้ครับถ้าต้องการแบบนั้น

คงต้องใช้พวก interval ajax หรือ jquery เข้ามาช่วยครับ

index.php
<html>
<head>
</head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(function(){

var domains = ['http://www.domain1.com','http://www.domain2.com','http://www.domain3.com']; //ใส่โดเมนเนมตรงนี้...

var checkLogin = function(dm){
      $.get('login.php',{domain: dm},function(data){
          $('#myDiv').append('Web: '+dm+'  ==>  ');
          if(data == 1){
              $('#myDiv').append('<span class="LoginPass">Login Success!</span><br>');
              result = 'ok';
          } else {
              $('#myDiv').append('<span class="LoginFail">Can\'t Login!</span><br>');
              result = 'ok';
          }
      });
};
result = 'ok';
var keepLogin = setInterval(function () {
  if(result=='ok'){
    result = '';
    if(domains.length > 0){
      checkLogin(domains[0]);
      var index = domains.indexOf(domains[0]);
      domains.splice(index, 1);
    } else {
      clearInterval(keepLogin);
    }
   }
},3000);

});
</script>
<style>
.LoginPass{
  color: green;
}
.LoginFail{
  color: red;
}
</style>
<body>
	<div id="myDiv"></div>
</body>
</html>




login.php
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "user=test&passwrd=001");
curl_setopt($ch, CURLOPT_URL, $_GET['domain']."?action=login");
curl_exec($ch);
$checklogin = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
if($checklogin){
	echo 1;
} else {
	echo 0;
}
  curl_close($ch);
?>




ประวัติการแก้ไข
2017-02-27 00:17:11
2017-02-27 00:43:50
2017-02-27 00:52:11
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-27 00:13:31 By : tomrambo
 


 

No. 7



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



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


การ echo ออกแบบให้ดีๆนะครับ ผมว่าพยายามจัดลำดับการทำงานให้มันประมวลผลให้เสร็จไปเลยก่อนจะดีกว่า เรื่อง echo ไว้ทีหลังสุด
เพราะบางกรณี server ถ้าไม่ได้เปิด output buffer แล้วโค้ดเราถ้ามีการเรียกใช้ header เช่น session, cookie มันจะมี error header already sent ออกมา
ถ้าประมวลผลเสร็จหมดแล้วเอาส่วนแสดงผลหรือ echo ไว้ท้ายสุด ปัญหานี้จะไม่มีเลย และไม่ต้องมาแก้ใน .htaccess, ไม่ต้องเพิ่มโค้ด ob_start() ด้วย.
นี่พูดถึงไว้เผื่อมีกรณีที่มันต้องทำงานกับ header.
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-27 06:24:45 By : mr.v
 


 

No. 8



โพสกระทู้ ( 228 )
บทความ ( 0 )



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


ขอบคุณทุกคนมากคร้า
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-02-27 14:54:08 By : sammam
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถาม การ echo ข้อมูลใน loop for กับ while ค่ะ อยากให้ echo ในแต่ละรอบของ loop ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
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 อัตราราคา คลิกที่นี่