본문 바로가기

php

(8)
(php) Prepared Statement과 SQL Injection 1.SQL Injection SQL Injection은 웹 애플리케이션 취약점 공격의 일종으로, 악의적인 사용자가 SQL 쿼리를 조작하여 비정상적인 데이터베이스 접근을 시도하는 공격 기법입니다. SQL Injection 공격은 보통 웹 애플리케이션에서 사용되는 폼 등에서 입력값을 받아 데이터베이스 쿼리에 전달하는 경우에 발생합니다. 악의적인 사용자는 입력란에 악성 코드나 SQL 쿼리문을 입력하여, 입력받은 값이 데이터베이스에 그대로 전달되어 실행되도록 유도합니다. 이렇게 전달된 악성 코드나 SQL 쿼리는 데이터베이스에서 실행되어 보안상 중요한 데이터를 탈취하거나 삭제, 수정 등의 악의적인 행위를 일으키게 됩니다. SQL Injection은 웹 애플리케이션에서 매우 흔한 보안 취약점으로, 악의적인 사용자가..
(php) echo로 html 출력 동적으로 html 객체를 출력하고 싶을때 php 를 사용하여 동적인 출력이 가능하다. $text = 'logcat'; echo " {$logcat} "; 위처럼 큰따음표 안에서 html 테그를 출력할 수 있고, echo의 출력 규칙에 따라 문자열 사이에 {} 를 넣어 변수를 출력할 수 있다.
(php) 배열의 값을 삭제, 추가(unset,array_splice) 값 삭제하기 배열에서 특정 값이 저장된 요소를 삭제하려면, unset() 함수를 사용합니다. 예를 들어, $myArray 배열에서 인덱스 1의 요소를 삭제하려면 다음과 같이 작성합니다. unset($myArray[1]); 만약, 배열에서 특정 값이 저장된 모든 요소를 삭제하려면, 반복문과 unset() 함수를 함께 사용합니다. for($i = 0; $i < count($myArray); $i++){ if($myArray[$i][0] == 'delete'){ unset($myArray[$i]); } } 위 예제 코드는, 2차원 배열 $myArray에서 첫 번째 열이 "delete"인 모든 요소를 삭제하는 예제입니다. 값 추가하기 배열에 새로운 값을 추가하려면, []를 사용하여 새로운 요소를 생성합니다. 예..
(php) count 함수 PHP의 count() 함수는 배열 또는 객체의 요소 개수를 반환합니다. 즉, 배열이나 객체의 길이를 반환합니다. count() 함수는 다음과 같은 구문을 가집니다. count($array, $mode) $array: 요소 개수를 세어야 하는 배열 또는 객체입니다. 배열 또는 객체가 아닌 다른 데이터 타입을 인자로 전달하면 E_WARNING 레벨의 에러를 발생시킵니다. $mode: (선택사항) 인자로 전달할 수 있는 두 가지 값(COUNT_NORMAL, COUNT_RECURSIVE) 중 하나를 전달할 수 있습니다. $mode가 COUNT_RECURSIVE로 설정된 경우, 다차원 배열의 모든 요소 개수를 반환합니다. 디폴트 값은 COUNT_NORMAL입니다. count() 함수는 반환 값으로 정수를 반환합..
(php)mysqli_fetch_(row , array , assoc) , 연관배열과 일반배열 mysqli_fetch_row : 일반배열로 반환 mysqli_fetch_array : 일반배열, 연관배열 둘다 반환 mysqli_fetch_assoc : 연관배열만 반환 일반배열은 인덱스를 사용하여 데이터 요소에 접근합니다. 즉, 각 데이터 요소는 배열 내의 위치에 따라 구분됩니다. 예를 들어, "arr[0]"은 첫 번째 요소를 나타냅니다. 반면에 연관배열은 각 데이터 요소가 고유한 키(key)를 가지며, 이를 사용하여 데이터 요소에 접근합니다. 예를 들어, "dict['key']"는 "key"라는 키에 해당하는 값을 반환합니다. 이러한 특성으로 인해 연관배열은 다양한 형태의 데이터를 보다 효율적으로 저장하고 관리할 수 있습니다. 또한, 일반배열은 크기가 고정되어 있으며, 배열에 새 요소를 추가하거나 ..
php 문자열 길이 구하기 strlen()와 mb_strlen()은 문자열의 길이를 구하는 함수입니다. strlen()은 바이트 기준, mb_strlen()은 문자셋 기준입니다. mr_strlen()에 경우 문자셋에 따라 한글 등에서는 값이 다릅니다. strlen( string ) string : 길이를 구할 문자열입니다. echo strlen( '123 abc' ); 는 7을 출력합니다. echo strlen( '가나다' ); 는 9를 출력합니다. mb_strlen( string [, encoding] ) string : 길이를 구할 문자열입니다. encoding : 인코딩 방식을 정합니다. 정하지 않으면 문서의 인코딩 방식을 사용합니다. echo mb_strlen( '123 abc' ); 는 7을 출력합니다. echo mb_s..
php 비교연산 1.==과 === 의 차이 $a = 23; $b = 23; $c = '23'; echo($a == $b); echo($a == $c); 결과 true true ==는 타입이 달라도 값이 같으면 true 를 반환하고 $a = 23; $b = 23; $c = '23'; echo($a === $b); echo($a === $c); 결과 true false ===는 값이 같아도 타입이 다르면 false를 반환하다. 2.empty() 함수 empty( $var ) 참조변수의 값이 없으면 true를 반환한다. 다음을 비어있는 것으로 판단합니다. "" (빈 문자열) 0 (정수 0) "0" (문자열 0) NULL FALSE array() (빈 배열) var $var; (클래스 안에서 값 없이 선언된 변수)
php에서 데이터 베이스(mysql)연동 서버를 사용할때는 데이터 베이스와 연결하여 데이터를 주고 받아야 할때가 있다, php웹서버를 사용했을때 mysql과 연동하는 방법을 알아보았다. 1.데이터 베이스 연결 $conn에 db연결 정보를 저장한다. 2.sql 쿼리 사용 DB와 연결을 했다면 DB에 정보를 전달해보자