블로그 이미지
조이키트 블로그
아두이노, 라즈베리파이, 반도체 센서/모듈 활용

calendar

1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

Notice

250x250
2023. 8. 29. 01:58 PHP
728x90
반응형

웹에서 파일을 업로드하려면 <form> 태그의 enctype 속성을 multipart/form-data로 설정해야 한다. 그리고 <input> 태그의 type 속성을 file로 설정해야 업로드할 파일을 선택하는 양식을 생성할 수 있다. name 속성을 upload로 설정하면 업로드한 파일이 $_POST["upload"] 배열에 저장된다.

<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <form name="form1" method="post" action="view8.php" enctype="multipart/form-data">
            <ul>
                <li>이미지 업로드 : <input type="file" name="upload"></li>
                <li>설명 : <textarea name="comment" rows="3" cols="60"></textarea></li>
                <li><input type="submit" value="확인"></li>
            </ul>
        </form>
    </body>
</html>

업로드된 이미지에 대한 설명을 입력할 수 있는 텍스트 영역을 생성하기 위해 <textarea>태그를 사용하고 name 속성은 comment로 설정한다. <확인>을 클릭하면 view8.php 파일로 이동한다.

파일 선택을 하고 텍스트 영역에 이미지에 대한 설명을 입력한 다음 확인을 클릭하면 

다음과 같이 나타난다.

view8.php 파일의 소스 코드는 다음과 같다.

<html>
<head>
<meta charset="utf-8">
<link href="style.css" rel="stylesheet">
</head>
<body>
<?php
	$file_dir = "C:/xampp/htdocs/07/img/";
	$file_path = $file_dir.$_FILES["upload"]["name"];
	if(move_uploaded_file($_FILES["upload"]["tmp_name"], $file_path)) {
		$img_path = "img/".$_FILES["upload"]["name"];
?>
	<ul>
		<li><img src="<?= $img_path?>"></li>
		<li><?= $_POST["comment"]?></li>
	</ul>
<?php
	}
	else {
		echo "파일 업로드 오류가 발생했습니다!!!";
	}
?>
</body>
</html>

업로드된 이미지 파일을 저장할 경로가 $file_dir에 설정되어 있다.

$_FILES["upload"]["name"]은 업로드된 파일명을 나타낸다. 따라서 $file_path에는 저장할 폴더와 파일명을 포함한 경로가 저장된다.

move_uploaded_file($_FILES["upload"]["tmp_name"], $file_path)는 업로드된 파일을 설정한 파일 경로에 저장한다는 의미이다. 여기서 $_FILES["upload"]["tmp_name"]은 서버에 임시로 저장된 업로드된 파일명이고 $file_path는 업로드된 파일을 저장할 경로를 의미한다.

$img_path는 <img> 태그의 src 속성으로 설정한 폴더와 이미지 파일명을 포함한 경로를 의미한다.

$_POST["comment"]는 사용자가 텍스트 영역에 입력한 내용을 의미한다.

move_uploaded_file() 함수는 HTTP POST를 이용하여 업로드된 파일을 지정된 경로에 저장할 때 사용한다. 만약 해당 경로에 동일한 파일이 있으면 덮어쓰기를 한다.

728x90
반응형
posted by 조이키트 블로그
2023. 8. 28. 17:49 PHP
728x90
반응형

선택 박스는 회원가입 양식, 게시판, 쇼핑몰 등에서 주로 사용된다.

<html>
    <head>
        <meta charset="utf-8">
        <link href="style.css" rel="stylesheet">
    </head>
    <body>
        <form name="form1" method="post" action="view6.php">
            <ul>
                <li>이메일 : <input type="text" name="email1">
                <select name="email2">
                    <option value="" selected>선택하세요!</option>
                    <option value="naver.com">naver.com</option>
                    <option value="google.com">gmail.com</option>
                    <option value="hanmail.com">hanmail.net</option>
                </select>
                </li>
                <li><input type="submit" value="확인"></li>
            </ul>
        </form>
    </body>
</html>

위 코드를 실행하면 다음과 같다.

<확인>을 클릭하면 action 속성에 설정된 view6.php 파일로 이동한다.

<html>
    <head>
        <meta charset="utf-8">
        <link href="style.css" rel="stylesheet">
    </head>
    <body>
    <?php
                $email1 = $_POST["email1"];
                $email2 = $_POST["email2"];
                ?>
        <ul>
            <li>이메일 : <?php echo $email1."@".$email2; ?></li>
        </ul>
    </body>
</html>

 

728x90
반응형
posted by 조이키트 블로그
2023. 8. 22. 15:40 PHP
728x90
반응형
<?php
//  놀이공원 입장객의 나이와 입장권의 종류에 따라 요금을 계산하는 프로그램
function child_rate($cat) // 어린이 요금
{
    if($cat == "입장권")
    $price = 13000;
elseif($cat == "자유이용권 주간") 
$price = 25000;
elseif($cat == "자유이용권 야간")
$price = 22000;
else
$price = 22000;
return $price;
}

function youth_rate($cat) // 청소년 요금
{
    if($cat == "입장권")
    $price = 15000;
elseif($cat == "자유이용권 주간")
$price = 28000;
elseif($cat == "자유이용권 야간")
$price = 25000;
else
$price = 25000;
return $price;
}

function adult_rate($cat) // 어른 요금
{
    if($cat == "입장권")
    $price = 18000;
elseif($cat == "자유이용권 주간")
$price = 32000;
elseif($cat == "자유이용권 야간")
$price = 29000;
else
$price = 29000;
return $price;
}

$age = 18;
$category = "자유이용권 야간";

if($age >= 0 && $age <= 3)
$fee = 0;
elseif($age >= 4 && $age <= 10)
$fee = child_rate($category);
elseif($age >= 11 && $age <=17)
$fee = youth_rate($category);
else
$fee = adult_rate($category);

echo "입장권 종류 : $category<br>";
echo "입장객 나이 : $age<br>";
echo "입장료 : $fee 원";
?>

출력 결과

입장권 종류 : 자유이용권 야간
입장객 나이 : 18
입장료 : 29000 원
728x90
반응형
posted by 조이키트 블로그
2023. 8. 22. 15:12 PHP
728x90
반응형
<?php
// 함수를 이용하여 3개의 수 중에서 가장 큰 수
function maxTwo($i, $j)
{
    if($i > $j)
    return $i;
else
return $j;
}

function maxThree($x, $y, $z)
{
    return maxTwo(maxTwo($x,$y), maxTwo($y, $z));
}

$a = 10;
$b = 5;
$c = 7;

$max_num = maxThree($a, $b, $c);
echo "$a, $b, $c 중 가장 큰 수 : $max_num";
?>

출력 결과

10, 5, 7 중 가장 큰 수 : 10
728x90
반응형
posted by 조이키트 블로그
2023. 8. 22. 10:56 PHP
728x90
반응형
<?php
$tel = "010-1234-5678";
echo "\$tel : $tel<br>";
$num_tel = strlen($tel);  //문자열의 길이 계산

echo "\$tel의 길이 : $num_tel<br>";

$tel1 = substr($tel, 0, 3); // 앞에서 3개의 문자 가져오기
echo "$tel1<br>"; 
$tel2 = substr($tel, 4, 4); // 네 번째 문자에서 4개의 문자 가져오기
echo "$tel2<br>";
$tel3 = substr($tel, 9, 4); // 아홉 번째 문자에서 4개의 문자 가져오기
echo "$tel3<br>";

$phone = explode("-", $tel); //하이픈(-)을 기준으로 문자열 분리
echo "전화번호 : $phone[0] $phone[1] $phone[2]<br>";
?>

전화 번호

$tel : 010-1234-5678
$tel의 길이 : 13
010
1234
5678
전화번호 : 010 1234 5678
728x90
반응형
posted by 조이키트 블로그
2023. 8. 22. 10:34 PHP
728x90
반응형
<?php
function cal_fee1($day, $age) // 일반 입장권 요금 구하기
{
    if($day == "주간")
    {
        if ($age > 12 && $age < 65)
        $money = 26000;
        else
        $money = 19000;
    }
    else
    {
        if ($age > 12 && $age < 65)
        $money = 21000;
        else
        $money = 16000;
    }
    return $money;
}

function cal_fee2($day, $age) // 자유 이용권 요금 구하기
{
    if($day == "주간")
    {
        if($age > 12 && $age <65)
        $money = 33000;
        else 
        $money = 24000;
    }
    else
    {
        if($age > 12 && $age < 65)
        $money = 28000;
        else
        $money = 21000;
    }
    return $money;
}

function cal_fee3($day, $age) // 2일 자유 이용권
{
    if($age > 12 && $age < 65)
    $money = 55000;
    else 
    $money = 40000;
    return $money;
}

function cal_fee4($day, $age) // 콤비권
{
    if($age > 12 && $age < 65)
    $money = 54000;
    else
    $money = 40000;
    return $money;
}

$category = 2; //입장권 종류
$age = 11;
$day = "야간";

if($category == 1)
$fee = cal_fee1($day, $age);
elseif($category == 2)
$fee = cal_fee2($day, $age);
elseif($category == 3)
$fee = cal_fee3($age);
else
$fee = cal_fee4($age);

if($category == 1)
$cat = "일반 입장권";
elseif($category == 2)
$cat = "자유 이용권";
elseif($category == 3)
$cat = "2일 자유 이용권";
else
$cat = "콤비권";

echo "- 구분 : $cat<br>";

if($category == 1 || $category == 2)
echo "- 주야간 : $day<br>";

echo "- 나이 : $age 세<br>";
echo "- 입장료 : $fee 원";
?>

출력 결과

- 구분 : 자유 이용권
- 주야간 : 야간
- 나이 : 11 세
- 입장료 : 21000 원
728x90
반응형
posted by 조이키트 블로그
2023. 8. 21. 12:04 PHP
728x90
반응형
<?php
function plus($a, $b)
{
    $c = $a + $b;
    return $c;
}

$result1 = plus(10, 20);
echo $result1."<br>";

$result2 = plus(200, 300);
echo $result2."<br>";
?>

출력 결과

30
500
728x90
반응형
posted by 조이키트 블로그
2023. 8. 20. 13:41 PHP
728x90
반응형

 

<?php
// 배열을 이용하여 성적의 합계와 평균 구하기
$score[0] = 90; // 영어성적
$score[1] = 80; // 컴퓨터 성적
$score[2] = 85; // 프로그래밍
$score[3] = 95; // 수학 성적
$score[4] = 93; // 알고리즘

$sum = 0;
for($a = 0; $a <= 4; $a++)
{
    $sum = $sum + $score[$a];
}
$avg = $sum/5;
echo "과목 점수 : $score[0], $score[1], $score[2], $score[3], $score[4]<br>";
echo "합계 : $sum, 평균 : $avg <br>";
?>

출력 결과

과목 점수 : 90, 80, 85, 95, 93
합계 : 443, 평균 : 88.6
728x90
반응형
posted by 조이키트 블로그
prev 1 next