activity_main.xml


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ImageView
android:id="@+id/topImage"
android:layout_width="match_parent"
android:layout_height="200dp"
android:src="@drawable/rock"
android:layout_alignParentTop="true"
/>
<ImageView
android:id="@+id/bottomImage"
android:layout_width="match_parent"
android:layout_height="200dp"
android:src="@drawable/paper"
android:layout_alignParentBottom="true"
/>

<Button
android:id="@+id/topButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/topImage"
android:text=""
android:onClick="topButton"
/>
<Button
android:id="@+id/bottomButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/bottomImage"
android:layout_alignParentRight="true"
android:text="아래"
android:onClick="bottomButton"
/>


</RelativeLayout>

MainActivity.java
package org.androidtown.a2_1;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

ImageView topImage;
ImageView bottomImage;
Button topButton;
Button bottomButton;
Boolean check = true;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

topImage = (ImageView) findViewById(R.id.topImage);
bottomImage = (ImageView) findViewById(R.id.bottomImage);

topButton = (Button) findViewById(R.id.topButton);
bottomButton = (Button) findViewById(R.id.bottomButton);
}

public void topButton(View v){
changeImage();
}

public void bottomButton(View v){
changeImage();
}

private void changeImage(){
if(check == true){
check = false;
topImage.setImageResource(R.drawable.paper);
bottomImage.setImageResource(R.drawable.rock);
}else{
check = true;
topImage.setImageResource(R.drawable.rock);
bottomImage.setImageResource(R.drawable.paper);
}
}
}


INSERT + UPDATE



INSERT를 실행하는데 값을 비교하여 변경사항이 있는 경우 UPDATE를 실행



INSERT into tbl (column1, column2, ...) VALUES(value1, value2, ...) ON DUPLICATE KEY UPDATE column1='value1', column2='value2', ...;



$q = "INSERT INTO $bbs(no, dept, name, grade, request, content, state, succ_date) 

VALUES ('$no', '$dept', '$name', '$grade', '$request', '$content', '$state', '$succ_date')

ON DUPLICATE KEY UPDATE 

dept='$dept', name='$name', grade='$grade', request='$request', content='$content', state='$state', succ_date='$succ_date'";


$result = $mysqli->query($q);



'Server - Linux > APM' 카테고리의 다른 글

[PHP] 엑셀 파싱 (PHPExcel.php)  (0) 2016.10.27
[MySql] 예약어  (0) 2016.10.24
[MySql] PHP MYSQLI_ASSOC / MYSQLI_NUM 차이점  (0) 2016.10.19
[MySql] 테이블 컬럼(시간) 표시 방법  (0) 2016.10.04
[APM] 설치 및 설정  (0) 2016.09.12

엑셀 파싱 (PHPExcel.php)


PHPExcel 다운로드 후 require_once로 추가 한 후 작업


<?php

require_once $_SERVER['DOCUMENT_ROOT'].'/database/preset.php';

//PHPExcel, IOFactory Import

require_once $_SERVER['DOCUMENT_ROOT'].'/board/Excel/Classes/PHPExcel.php';

require_once $_SERVER['DOCUMENT_ROOT'].'/board/Excel/Classes/PHPExcel/IOFactory.php';

?>


<?php

$objPHPExcel = new PHPExcel();

$filename = $_SERVER['DOCUMENT_ROOT'].'/data/excel/'.$filename;

try{

//업로드 된 엑셀 형식에 맞는 Reader객체를 만든다.

$objReader = PHPExcel_IOFactory::createReaderForFile($filename);

//읽기전용으로 설정

$objReader->setReadDataOnly(true);

//엑셀파일을 읽는다.

$objExcel = $objReader->load($filename);

//첫번째 시트를 선택

$objExcel->setActiveSheetIndex(0);

$objWorksheet = $objExcel->getActiveSheet();

echo "<table>";

//$rowIterator = $objWorksheet->getRowIterator();

//여기 주석은 전체 출력을 해주는 부분!! (참고)

//foreach($rowIterator as $row){ //모든 행에 대해서

//echo "<tr>";

//$cellIterator = $row->getCellIterator();

//$cellIterator->setIterateOnlyExistingCells(false);

//foreach($cellIterator as $cell){ //해당 열의 모든 셀에 대해서

//echo "<td>",iconv("UTF-8", "EUC-KR", $cell->getValue()), "</td>";

//}

//echo "</tr>";

//}

$maxRow = $objWorksheet->getHighestRow();

for($i = 2; $i <= $maxRow; $i++){ //두번째 행부터 읽는다.

echo "<tr>";

$dept = $objWorksheet->getCell('B' . $i)->getValue(); // 1번째 열

$name = $objWorksheet->getCell('C' . $i)->getValue(); // 2번째 열

$grade = $objWorksheet->getCell('D' . $i)->getValue(); // 3번째 열

$request = $objWorksheet->getCell('E' . $i)->getValue(); // 4번째 열

$content = $objWorksheet->getCell('F' . $i)->getValue(); // 5번째 열

$state = $objWorksheet->getCell('G' . $i)->getValue(); // 6번째 열

$succ_date = $objWorksheet->getCell('I' . $i)->getValue(); // 7번째 열

echo "<td>".$dept."</td>";

echo "<td>".$name."</td>";

echo "<td>".$grade."</td>";

echo "<td>".$request."</td>";

echo "<td>".$content."</td>";

echo "<td>".$state."</td>";

echo "<td>".$succ_date."</td>";

echo "</tr>";

$q = "INSERT INTO $bbs (dept, name, grade, request, content, state, succ_date) values('$dept', '$name', '$grade', '$request', '$content', '$state', '$succ_date')";

$result = $mysqli->query($q);

}

echo "</table>";


}catch(exception $e){

echo "엑셀파일을 읽는 도중 오류가 발생하였습니다.";

}

​?>



'Server - Linux > APM' 카테고리의 다른 글

[MySql] INSERT + UPDATE  (0) 2016.10.27
[MySql] 예약어  (0) 2016.10.24
[MySql] PHP MYSQLI_ASSOC / MYSQLI_NUM 차이점  (0) 2016.10.19
[MySql] 테이블 컬럼(시간) 표시 방법  (0) 2016.10.04
[APM] 설치 및 설정  (0) 2016.09.12

+ Recent posts