필드 추가 안하고 사용할때 소스 줄이기 정보
필드 추가 안하고 사용할때 소스 줄이기
본문
만약 t1~t40까지 나올때..
============================================
$wr_1 = "$t1||$t2||$t3||$t4||$t5||$t6||$t7||$t8||$t9||$t10||$t11||$t12||$t13||$t14||$t15||$t16||$t17||$t18||$t19||$t20||$t21||$t22||$t23||$t24||$t25||$t26||$t27||$t28||$t29||$t30||$t31||$t32||$t33||$t34||$t35||$t36||$t37||$t38||$t39||$t40";
노가다인듯해서
for문으로 돌려봤습니다
============================================
for ($i=1 ; $i < 41; $i++)
{
$wr_1.=${'t'.$i};
if($i < 40)
{
$wr_1.= "||";
}
}
============================================
그누보드에 사용할려면
gbupdat.skin.php <<==스킨파일에
============================================
<?
for ($i=1 ; $i < 41; $i++)
{
$wr_1.=${'t'.$i};
if($i < 40)
{
$wr_1.= "||";
}
}
if(!$wr_comment) { // 코멘일때는 저장하면 안됩.
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
}
?>
==============================================
요기까지 ^^
============================================
뷰(gbview.skin.php) 파일도
<?
$ot = explode("|",$write[wr_1]);
$t1 = $ot[0];
$t2 = $ot[1];
$t3 = $ot[2];
$t4 = $ot[3];
$t5 = $ot[4];
$t6 = $ot[5];
$t7 = $ot[6];
$t8 = $ot[7];
$t9 = $ot[8];
$t10 = $ot[9];
$t11 = $ot[10];
$t12 = $ot[11];
$t13 = $ot[12];
$t14 = $ot[13];
$t15 = $ot[14];
$t16 = $ot[15];
$t17 = $ot[16];
$t18 = $ot[17];
$t19 = $ot[18];
$t20 = $ot[19];
?>
이눔도
for문으로
==================================
<?
$ot = explode("|",$write[wr_1]);
for ($i=1,$j=0 ; $i < 21; $i++,$j++)
{
${'t_'.$i} = $t[$j];
}
?>
=================================
포인트를 늘리자 포인트를 늘리자 ^_^;;;;;;;;;;;;;;;;;;;;;;
sjsjin 님에 팁
장점 : 배열 무제한으로 사용할수 있다는 장점이 있네요..
위에 있는 팁을 사용시 40개만 사용하는데 sjsjin 님에 팁 사용시 무제한으로 가능합
------------------------------------------------------------------------------------------------------------------------
// 아래처럼 수정해서 쓰시는게 맞을듯 합니다..이유는 배열값이 항상 정해져 있는게 아니라는 가정하에서..
// gbupdate.skin.php
// 넘어오는 $t? 값을 계산하기 위해서 $_POST 로 넘어오는 것만큼 카운트해서 $t? 수를 계산해서 저장하고,
for($k=0; $k<count($_POST); $k++){
if($_POST["t$k"]){
$temp[$k] = $_POST["t$k"];
}
}
// 특정기호(위 예문에서 || 기호) 로 합친다.
$wr_1 = implode("||", $temp);
// 인서트
if(empty($w)){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$_POST['wr_id']."' ");
}else if($w == 'u'){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$wr['wr_id']."' ");
}
// gbview.skin.php
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
${"t."$i} = $temp[$i];
}
* 쓰기폼에서도 위와같은 형식을 이용하면 됩니다.
그리고 위 예문에서 중괄호({}) 로 파싱하는 것은 좋지 않은 습관입니다.
쓰기폼에서 배열로 순서를 주고, 인서트파일, 뷰파일에서도 배열로 주는 것이 좋습니다.
// 예) : 뷰/쓰기폼
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
$t[$i] = $temp[$i];
}
// 인서트
for($k=0; $k<count($_POST['t']); $k++){
$temp[$k] = $_POST['t'][$k];
}
$wr_1 = implode("||", $temp);
============================================
$wr_1 = "$t1||$t2||$t3||$t4||$t5||$t6||$t7||$t8||$t9||$t10||$t11||$t12||$t13||$t14||$t15||$t16||$t17||$t18||$t19||$t20||$t21||$t22||$t23||$t24||$t25||$t26||$t27||$t28||$t29||$t30||$t31||$t32||$t33||$t34||$t35||$t36||$t37||$t38||$t39||$t40";
노가다인듯해서
for문으로 돌려봤습니다
============================================
for ($i=1 ; $i < 41; $i++)
{
$wr_1.=${'t'.$i};
if($i < 40)
{
$wr_1.= "||";
}
}
============================================
그누보드에 사용할려면
gbupdat.skin.php <<==스킨파일에
============================================
<?
for ($i=1 ; $i < 41; $i++)
{
$wr_1.=${'t'.$i};
if($i < 40)
{
$wr_1.= "||";
}
}
if(!$wr_comment) { // 코멘일때는 저장하면 안됩.
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
}
?>
==============================================
요기까지 ^^
============================================
뷰(gbview.skin.php) 파일도
<?
$ot = explode("|",$write[wr_1]);
$t1 = $ot[0];
$t2 = $ot[1];
$t3 = $ot[2];
$t4 = $ot[3];
$t5 = $ot[4];
$t6 = $ot[5];
$t7 = $ot[6];
$t8 = $ot[7];
$t9 = $ot[8];
$t10 = $ot[9];
$t11 = $ot[10];
$t12 = $ot[11];
$t13 = $ot[12];
$t14 = $ot[13];
$t15 = $ot[14];
$t16 = $ot[15];
$t17 = $ot[16];
$t18 = $ot[17];
$t19 = $ot[18];
$t20 = $ot[19];
?>
이눔도
for문으로
==================================
<?
$ot = explode("|",$write[wr_1]);
for ($i=1,$j=0 ; $i < 21; $i++,$j++)
{
${'t_'.$i} = $t[$j];
}
?>
=================================
포인트를 늘리자 포인트를 늘리자 ^_^;;;;;;;;;;;;;;;;;;;;;;
sjsjin 님에 팁
장점 : 배열 무제한으로 사용할수 있다는 장점이 있네요..
위에 있는 팁을 사용시 40개만 사용하는데 sjsjin 님에 팁 사용시 무제한으로 가능합
------------------------------------------------------------------------------------------------------------------------
// 아래처럼 수정해서 쓰시는게 맞을듯 합니다..이유는 배열값이 항상 정해져 있는게 아니라는 가정하에서..
// gbupdate.skin.php
// 넘어오는 $t? 값을 계산하기 위해서 $_POST 로 넘어오는 것만큼 카운트해서 $t? 수를 계산해서 저장하고,
for($k=0; $k<count($_POST); $k++){
if($_POST["t$k"]){
$temp[$k] = $_POST["t$k"];
}
}
// 특정기호(위 예문에서 || 기호) 로 합친다.
$wr_1 = implode("||", $temp);
// 인서트
if(empty($w)){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$_POST['wr_id']."' ");
}else if($w == 'u'){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$wr['wr_id']."' ");
}
// gbview.skin.php
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
${"t."$i} = $temp[$i];
}
* 쓰기폼에서도 위와같은 형식을 이용하면 됩니다.
그리고 위 예문에서 중괄호({}) 로 파싱하는 것은 좋지 않은 습관입니다.
쓰기폼에서 배열로 순서를 주고, 인서트파일, 뷰파일에서도 배열로 주는 것이 좋습니다.
// 예) : 뷰/쓰기폼
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
$t[$i] = $temp[$i];
}
// 인서트
for($k=0; $k<count($_POST['t']); $k++){
$temp[$k] = $_POST['t'][$k];
}
$wr_1 = implode("||", $temp);
추천
0
0
댓글 전체
시각의 전환이 돋보입니다. *^^*
'포인트 놀이'에 동참^^;
'포인트 놀이'에 동참^^;
이왕이면 gbupdate.php 에서 처리하지 마시고 gbupdat.skin.php 에서 처리를 해주시기 바랍니다^^

수정 완료 포인트 놀이하면 관리자님한테 혼나는거 아닌가요 ^_^;;;;
루트님 의견에 한표 던집니다~~~~~~~~^^
그런데 그 사이에 수정이.......ㅎㅎㅎ
그런데 그 사이에 수정이.......ㅎㅎㅎ
코멘트 작성시 어떻게 되는지 체크해보셔야 할듯 합니다
예전에 다음처럼 하지 않았을때.... 코멘트 작성시 wr_1의 필드가 클리어 되는 문제가 있었습니다 ^^
if(!$wr_comment) { // 코멘일때는 저장하면 안됩.
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
}
예전에 다음처럼 하지 않았을때.... 코멘트 작성시 wr_1의 필드가 클리어 되는 문제가 있었습니다 ^^
if(!$wr_comment) { // 코멘일때는 저장하면 안됩.
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
}

코멘트 달아두 wr_1 값이 클리어 되는 증상이 안나오네요
===================================================
if ($w == '' || $w == 'r') {
$sql = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id'";
sql_query($sql);
}
if ($w == 'u') {
$sql = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr[wr_id]' ";
sql_query($sql);
}
===================================================
$w=='c' 이게 없어서 안되는듯 싶네요
근데 Root님 소스가 더 간단하네요 수정 수정
===================================================
if ($w == '' || $w == 'r') {
$sql = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id'";
sql_query($sql);
}
if ($w == 'u') {
$sql = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr[wr_id]' ";
sql_query($sql);
}
===================================================
$w=='c' 이게 없어서 안되는듯 싶네요
근데 Root님 소스가 더 간단하네요 수정 수정
// 아래처럼 수정해서 쓰시는게 맞을듯 합니다..이유는 배열값이 항상 정해져 있는게 아니라는 가정하에서..
// gbupdate.skin.php
// 넘어오는 $t? 값을 계산하기 위해서 $_POST 로 넘어오는 것만큼 카운트해서 $t? 수를 계산해서 저장하고,
for($k=0; $k<count($_POST); $k++){
if($_POST["t$k"]){
$temp[$k] = $_POST["t$k"];
}
}
// 특정기호(위 예문에서 || 기호) 로 합친다.
$wr_1 = implode("||", $temp);
// 인서트
if(empty($w)){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$_POST['wr_id']."' ");
}else if($w == 'u'){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$wr['wr_id']."' ");
}
// gbview.skin.php
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
${"t."$i} = $temp[$i];
}
* 쓰기폼에서도 위와같은 형식을 이용하면 됩니다.
그리고 위 예문에서 중괄호({}) 로 파싱하는 것은 좋지 않은 습관입니다.
쓰기폼에서 배열로 순서를 주고, 인서트파일, 뷰파일에서도 배열로 주는 것이 좋습니다.
// 예) : 뷰/쓰기폼
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
$t[$i] = $temp[$i];
}
// 인서트
for($k=0; $k<count($_POST['t']); $k++){
$temp[$k] = $_POST['t'][$k];
}
$wr_1 = implode("||", $temp);
// gbupdate.skin.php
// 넘어오는 $t? 값을 계산하기 위해서 $_POST 로 넘어오는 것만큼 카운트해서 $t? 수를 계산해서 저장하고,
for($k=0; $k<count($_POST); $k++){
if($_POST["t$k"]){
$temp[$k] = $_POST["t$k"];
}
}
// 특정기호(위 예문에서 || 기호) 로 합친다.
$wr_1 = implode("||", $temp);
// 인서트
if(empty($w)){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$_POST['wr_id']."' ");
}else if($w == 'u'){
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '".$wr['wr_id']."' ");
}
// gbview.skin.php
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
${"t."$i} = $temp[$i];
}
* 쓰기폼에서도 위와같은 형식을 이용하면 됩니다.
그리고 위 예문에서 중괄호({}) 로 파싱하는 것은 좋지 않은 습관입니다.
쓰기폼에서 배열로 순서를 주고, 인서트파일, 뷰파일에서도 배열로 주는 것이 좋습니다.
// 예) : 뷰/쓰기폼
$temp = explode("||", $write['wr_1']);
for($i=0; $i<count($temp); $i++){
$t[$i] = $temp[$i];
}
// 인서트
for($k=0; $k<count($_POST['t']); $k++){
$temp[$k] = $_POST['t'][$k];
}
$wr_1 = implode("||", $temp);
for문으로 ....
난 왜 저걸 생각하지 못했을까?
좋은 팁 소중히 갈무리 합니다.
^^
난 왜 저걸 생각하지 못했을까?
좋은 팁 소중히 갈무리 합니다.
^^