AP102 2016/5/25 早上

AP102 2016/5/23
<?php 
phpinfo(); 
?>
<?php
        echo "implode<br>";
        echo $_POST["year"]."-".$_POST["month"]."-".$_POST["day"];
        echo "<br>";
        echo implode("-", $_POST);

    ?>

    <form action="?" method="post" enctype="multipart/form-data"> 
        Birthday:
        <input type="number" name="year">-
        <input type="number" name="month">-
        <input type="number" name="day">
        <input type="submit" value="Send">

    </form>
在這是為了示範implode的才切割成三個
否則使用以下輸入方式即可

<input type="date" name="date">

同一個檔案的POST會不會干擾
會! 因為是傳到同一個資料
利用GET去區分同一個頁面的資料
<?php
    if($_GET["action"]=="implode"){
        echo "implode<br>";
        echo $_POST["year"]."-".$_POST["month"]."-".$_POST["day"];//舊寫法
        echo "<br>";
        echo implode("-", $_POST);//新寫法
        }
    ?>

    <form action="?action=implode" method="post" enctype="multipart/form-data"> 
        Birthday:
        <input type="number" name="year">-
        <input type="number" name="month">-
        <input type="number" name="day">
        <input type="submit" value="Send">

    </form>
大小寫的區分
<?php
    echo "strtolower:<br>";
    echo  strtolower("ABC");
    echo "<br>";
    echo "strtoupper:<br>";
    echo  strtoupper("ABC"); 
?> 

//結果
strtolower:
abc
strtoupper:
ABC
字串長度
<?php
    echo "strlen:<br>";
    echo  strlen("ABCDEFGHIJK");
    echo "<br>";

?> 
//結果
strlen:
11
<?php
    echo "substr:<br>";
    echo  substr("ABCDEFGHIJK",2,4);
    echo "<br>";
?> 
//結果(第二個數字開始取四個)

substr:
CDEF
<?php
    if($_GET["action"]=="substr"){
        echo "substr:<br>";
        echo  substr($_POST["content"],0,5);
        echo "<br>";

    }
?>

<form action="?action=substr" method="post" enctype="multipart/form-data">
        Content:<br>
        <textarea name="content"></textarea><br>
        <input type="submit" value="Send">

    </form>
//結果

假設輸入ABCDEFG
只會取得前五個字
0開始取五個
01234
修改上一則程式碼
假設輸入內容字元小於5則不出現…截斷表示
大於5則出現
<?php
    if($_GET["action"]=="substr"){
        echo "substr:<br>";
        echo  substr($_POST["content"],0,5);
        if(strlen($_POST["content"])>5){
            echo "...";
        }
        echo "<br>";

    }
?>

//結果

輸入123
substr:
123
數入123456
substr:
12345...
顯示繼續閱讀文章的功能
<?php
    if($_GET["action"]=="substr"){
        echo "substr:<br>";
        echo "<div id='substr_show'>";
        echo  substr($_POST["content"],0,5);
        if(strlen($_POST["content"])>5){
            echo "...";
        }
        echo "<a href=''>(More)</a>";
        echo "</div>";
        echo "<div id='substr_all' style='display:none;'>".$_POST["content"]."</div>";
        echo "<br>";

    }
?>

<form action="?action=substr" method="post" enctype="multipart/form-data">
        Content:<br>
        <textarea name="content"></textarea><br>
        <input type="submit" value="Send">

    </form>

//結果(會先隱藏掉下方的部分)

substr:
(More)
完整程式碼加上JavaScript的語法
<?php
    if($_GET["action"]=="substr"){
        echo "substr:<br>";
        echo "<div id='substr_show'>";
        echo  substr($_POST["content"],0,5);
        if(strlen($_POST["content"])>5){
            echo "...";
        }
        echo "<a href='javascript:show_all();'>(More)</a>";
        echo "</div>";
        echo "<div id='substr_all' style='display:none;'>".$_POST["content"]."</div>";
        echo "<br>";

    }
?>
<script>
    function show_all(){
        document.querySelector("#substr_show").style.display="none";
        document.querySelector("#substr_all").style.display="block";
    }

</script>

<form action="?action=substr" method="post" enctype="multipart/form-data">
        Content:<br>
        <textarea name="content"></textarea><br>
        <input type="submit" value="Send">

    </form>
輸入一段文章
看是否有找到關鍵字
找到了輸出找到了
找不到輸出找不到
<?php
    if($_GET["action"]=="substr"){
        echo "substr:<br>";
        if(strchr($_POST["content"],$_POST["keyword"])!=false){
            echo  "找到了";
        }else{
            echo  "沒找到";
        }
        echo "<br>";
    }
?>
<form action="?action=substr" method="post" enctype="multipart/form-data">
        Keyword:<br>
        <input type="text" name="keyword"><br>
        Content:<br>
        <textarea name="content"></textarea><br>
        <input type="submit" value="Send">
</form>
讀出檔案
<?php
    session_start();
?>
<!doctype html>
<html>
<head>
    <META charset="utf-8">
    <title></title>

</head>
<body>
    <?php
        echo file_get_contents("21.php");
    ?>
</body>
</html>
file_get_contents(“21.php”)不執行php(顯示)
include (“21.php”)會執行php(不顯示)
<?php
    session_start();
?>
<!doctype html>
<html>
<head>
    <META charset="utf-8">
    <title></title>

</head>
<body>
    <?php
        echo file_get_contents("21.php");//有php
        echo "====";
        include ("21.php");//沒有php
    ?>
</body>
</html>
創造一個檔案名稱
file_put_contents(“2016-05-23.txt”,”Hello~”,8)//8會一直串接,不寫會一直被覆蓋
<?php
    session_start();
?>
<!doctype html>
<html>
<head>
    <META charset="utf-8">
    <title></title>

</head>
<body>
    <?php
        echo file_get_contents("21.php");//有php
        echo "====";
        include ("21.php");//沒有php
    ?>
    <?php
        file_put_contents("2016-05-23.txt","Hello~",8)//8會一直串接,不寫會一直被覆蓋
    ?>
</body>
</html>
再加一段連續計數的功能
在資料夾當中新增一個count.txt然後內容輸入0
<?php
        $count = file_get_contents("count.txt")+1;
        file_put_contents("count.txt", $count);
        echo "你是本站第".$count,"位使用者";
?>
限制連續存取人數
<?php
        $count = file_get_contents("count.txt");
        if ($_SESSION["look"]!=true) {
            $count++;
            file_put_contents("count.txt", $count);
            $_SESSION["look"]=true;
        }


        echo "你是本站第".$count,"位使用者";
?>
建立資料夾與刪除資料夾
<?php 
        mkdir("2016-05-23");//建立
        rmdir("2016-05-23");//刪除
?>
會將2016-05-23.txt複製到2016-05-24.txt
<?php
        copy("2016-05-23.txt", "2016-05-24.txt");

?>
刪除檔案
<?php
        unlink("2016-05-24.txt");
    ?>
假設資料夾很類似
假設存在則回傳1(true)
不存在回傳0(false)
<?php
        echo file_exists("2016-05-23.txt");
?>
判斷是不是目錄
echo"<br>is_dir:";
        echo is_dir("1.php");//是目錄嗎?
?>

Comments

Popular posts from this blog

MEGA 暫存檔案刪除

XAMPP 使用多PORT來執行不同網頁

IOS GCD多執行緒