├── crud ├── footer.php ├── db.php ├── nav.php ├── header.php ├── addStudent.php ├── index.php ├── editStudent.php └── deleteStudent.php ├── session ├── logout.php ├── index.php └── login.php ├── t16-get.php ├── t3-constant.php ├── t13-function.php ├── t11-random-pass.php ├── t12-string-function.php ├── oop ├── oop3.php ├── oop1.php ├── oop2.php └── magic_methods.php ├── t1-variable.php ├── t5-methfunc.php ├── t8-loop.php ├── problem siolving └── problem-1.php ├── t17-date.php ├── t15-sg.php ├── t10-array-func.php ├── t2-data-types.php ├── t14-regex.php ├── t6-condition.php ├── t9-array.php ├── t4-operators.php ├── t7-problem-solving-1.php ├── query.sql ├── b81.sql └── t18-form-validation.php /crud/footer.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /crud/db.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /session/logout.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /crud/nav.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /t16-get.php: -------------------------------------------------------------------------------- 1 | "; 5 | echo $_GET['city'] ?? "No data found"; 6 | ?> -------------------------------------------------------------------------------- /t3-constant.php: -------------------------------------------------------------------------------- 1 | $x is a :\n good number"; 9 | ?> -------------------------------------------------------------------------------- /session/index.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /crud/header.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Document 8 | 9 | 10 | -------------------------------------------------------------------------------- /t13-function.php: -------------------------------------------------------------------------------- 1 | $y){ 4 | return "Hello world!
"; 5 | } 6 | return "Hello Bangladesh!
"; 7 | } 8 | 9 | echo myFunc(7, 6); 10 | echo myFunc(); 11 | echo myFunc(1); 12 | echo myFunc(y: 1, x: 2); 13 | ?> -------------------------------------------------------------------------------- /session/login.php: -------------------------------------------------------------------------------- 1 | 12 |
13 | 14 | 15 |
-------------------------------------------------------------------------------- /t11-random-pass.php: -------------------------------------------------------------------------------- 1 | "; 4 | 5 | $alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'; 6 | date_default_timezone_set('Asia/Dhaka'); 7 | $date = date('Y-F-d#H:i:s@A!l'); 8 | $shuffle = strrev(str_shuffle($alphabet.$date.uniqid().rand(100000,999999))); 9 | echo substr($shuffle, 0, 9); 10 | ?> 11 |
12 | -------------------------------------------------------------------------------- /t12-string-function.php: -------------------------------------------------------------------------------- 1 | "; // 12 4 | echo str_word_count("Hello world!")."
"; // 2 5 | echo strrev("Hello world!")."
"; // !dlrow olleH 6 | echo strpos("Hello world!", "world")."
"; // 6 7 | echo str_replace("world", "Dolly", "Hello world!")."
"; // Hello Dolly! 8 | echo str_repeat("Hello", 5)."
"; // HelloHelloHelloHelloHello 9 | echo str_shuffle("Hello world!")."
"; // !rHdloolwle 10 | echo substr("Hello world!", 6)."
"; // world! 11 | ?> -------------------------------------------------------------------------------- /oop/oop3.php: -------------------------------------------------------------------------------- 1 | "; 20 | echo myClass::myFunc("Asif", 123); 21 | 22 | 23 | ?> -------------------------------------------------------------------------------- /t1-variable.php: -------------------------------------------------------------------------------- 1 | Sima Sumaiya"; 23 | echo $name, "Ha ha ha"; 24 | print $name; 25 | 26 | 27 | $result = print $name; 28 | echo $result; 29 | ?> 30 | -------------------------------------------------------------------------------- /t5-methfunc.php: -------------------------------------------------------------------------------- 1 | "; // 6.7 4 | echo ceil(6.1)."
"; // 7 5 | echo floor(6.7)."
"; // 6 6 | echo round(6.4)."
"; // 6 7 | echo is_int(6)."
"; // true 8 | echo is_integer(6)."
"; // true - alias of is_int() 9 | echo is_long(6)."
"; // true - alias of is_int() 10 | echo is_float(6.7)."
"; // true 11 | echo is_numeric("6")."
"; // true 12 | echo sqrt(36)."
"; // 8 13 | echo PHP_INT_MAX."
"; 14 | echo PHP_INT_MIN."
"; 15 | echo PHP_INT_SIZE."
"; 16 | echo rand()."
"; 17 | echo rand(1, 10)."
"; 18 | echo uniqid()."
"; 19 | echo max(1, 2, 3, 6, 5)."
"; 20 | echo min(2, 4, 1, 6, 5)."
"; 21 | echo pi()."
"; 22 | echo pow(2, 3)."
"; 23 | var_dump(is_nan(6)); 24 | ?> -------------------------------------------------------------------------------- /t8-loop.php: -------------------------------------------------------------------------------- 1 | "; 16 | $g = 2; 17 | for ($i=1; $i <= 10; $i++) { 18 | echo "$g x $i = ".($g*$i)."
"; 19 | } 20 | 21 | echo "
"; 22 | 23 | // do while loop 24 | 25 | $y = 20; 26 | /* while ($y < 10){ 27 | echo $y; 28 | $y++; 29 | } 30 | */ 31 | do{ 32 | echo $y; 33 | $y++; 34 | }while($y < 10); 35 | 36 | 37 | echo "
"; 38 | 39 | // break and continue 40 | 41 | for ($i=0; $i < 10; $i++) { 42 | if($i === 5){ 43 | break; 44 | } 45 | echo $i; 46 | } 47 | 48 | echo "
"; 49 | 50 | for ($i=0; $i < 10; $i++) { 51 | if($i === 5){ 52 | continue; 53 | } 54 | echo $i; 55 | } 56 | 57 | ?> -------------------------------------------------------------------------------- /problem siolving/problem-1.php: -------------------------------------------------------------------------------- 1 | $maxInt / 10 || ($reverse == $maxInt / 10 && $pop > 7)) { 18 | return 0; 19 | } 20 | if ($reverse < $minInt / 10 || ($reverse == $minInt / 10 && $pop < -8)) { 21 | return 0; 22 | } 23 | 24 | $reverse = $reverse * 10 + $pop; 25 | } 26 | 27 | return $reverse; 28 | } 29 | } 30 | 31 | 32 | ?> -------------------------------------------------------------------------------- /t17-date.php: -------------------------------------------------------------------------------- 1 | "; 6 | 7 | // mktime(hour, minute, second, month, day, year) 8 | $timestamp = mktime(10, 30, 15, 10, 9, 2030); 9 | echo date("F-d-Y l", $timestamp); 10 | 11 | echo "
"; 12 | 13 | // strtotime() 14 | $timestamp = strtotime("tomorrow"); 15 | echo date("F-d-Y l", $timestamp)."
"; 16 | 17 | $timestamp = strtotime("next Monday"); 18 | echo date("F-d-Y l", $timestamp)."
"; 19 | 20 | $timestamp = strtotime("+3 Months"); 21 | echo date("F-d-Y l", $timestamp)."
"; 22 | 23 | // next 7 fridays 24 | $startDate = strtotime("next Friday"); 25 | $endDate = strtotime("+6 Weeks", $startDate); 26 | while($startDate <= $endDate){ 27 | echo date("F-d-Y l", $startDate)."
"; 28 | $startDate = strtotime("+1 Week", $startDate); 29 | } 30 | ?> -------------------------------------------------------------------------------- /t15-sg.php: -------------------------------------------------------------------------------- 1 | "; 7 | } 8 | function myFullName () { 9 | return "My name is ". $GLOBALS['fistName']." ".$GLOBALS["lastName"]."
"; 10 | } 11 | // echo $fullName; 12 | echo myName().myFullName(); 13 | 14 | // $_SERVER 15 | echo $_SERVER['PHP_SELF']."
"; 16 | echo $_SERVER['SERVER_NAME']."
"; 17 | echo $_SERVER['HTTP_HOST']."
"; 18 | // echo $_SERVER['HTTP_REFERER']."
"; 19 | echo $_SERVER['HTTP_USER_AGENT']."
"; 20 | echo $_SERVER['SCRIPT_NAME']."
"; 21 | echo $_SERVER['SERVER_ADDR']."
"; 22 | echo $_SERVER['SERVER_PORT']."
"; 23 | echo $_SERVER['SERVER_SOFTWARE']."
"; 24 | echo $_SERVER['REQUEST_METHOD']."
"; 25 | 26 | // 27 | 28 | echo "
";
29 |     print_r($_SERVER);
30 |     echo "
"; 31 | ?> -------------------------------------------------------------------------------- /crud/addStudent.php: -------------------------------------------------------------------------------- 1 | query("INSERT INTO students (`name`) VALUES ('$sname')"); 13 | if (!$insert) { 14 | echo "Something went wrong"; 15 | } else { 16 | $successMessage = "Student Added Successfully"; 17 | echo ""; 18 | } 19 | } 20 | } 21 | ?> 22 |

Add Student

23 |
24 | 25 | 26 |
27 |
28 | 29 |
30 | -------------------------------------------------------------------------------- /crud/index.php: -------------------------------------------------------------------------------- 1 | query("SELECT * FROM students"); 4 | if($select->num_rows > 0){ 5 | ?> 6 |

7 | 8 | 9 | 10 | 11 | 12 | 13 | fetch_object()){ ?> 14 | 15 | 16 | 17 | 25 | 26 | 27 |
SNNameAction
name ?> 18 | 19 | 20 | 21 | 22 | 23 | 24 |
28 | 29 |

No Students Found

30 | 34 | -------------------------------------------------------------------------------- /crud/editStudent.php: -------------------------------------------------------------------------------- 1 | query("SELECT * FROM students WHERE id = '$id'"); 5 | $data = $select->num_rows == 0 ? header("location: ./") : $select->fetch_object(); 6 | 7 | if(isset($_POST['sname'])){ 8 | $sname = $_POST['sname']; 9 | $update = $conn->query("UPDATE students SET `name` = '$sname' WHERE id = '$id'"); 10 | if(!$update){ 11 | echo "Something went wrong"; 12 | }else{ 13 | $successMessage = "Student Updated Successfully"; 14 | echo ""; 15 | } 16 | } 17 | ?> 18 |

Edit Student

19 |
20 | 21 | 22 |
23 |
24 | 25 |
26 | 27 | -------------------------------------------------------------------------------- /oop/oop1.php: -------------------------------------------------------------------------------- 1 | "; 12 | } 13 | 14 | public function __destruct() 15 | { 16 | echo "
This is a destructor"; 17 | } 18 | 19 | public function studentName4() { 20 | return $this->studentName3; 21 | } 22 | } 23 | 24 | class php81 extends b81 { 25 | public function studentName5() { 26 | return $this->studentName2; 27 | } 28 | } 29 | 30 | $obj = new b81; 31 | echo $obj->studentName1; 32 | echo "
"; 33 | echo $obj->studentName4(); 34 | echo "
"; 35 | echo b81::batch; 36 | echo "
"; 37 | echo b81::$studentName6; 38 | 39 | echo "
"; 40 | 41 | $obj2 = new php81; 42 | echo $obj2->studentName5(); 43 | ?> -------------------------------------------------------------------------------- /crud/deleteStudent.php: -------------------------------------------------------------------------------- 1 | query("SELECT * FROM students WHERE id = '$id'"); 5 | $data = $checkId->num_rows == 0 ? header("location: ./") : $checkId->fetch_object(); 6 | if(isset($_POST['yes'])){ 7 | $delete = $conn->query("DELETE FROM students WHERE id = '$id'"); 8 | if(!$delete){ 9 | echo "Something went wrong"; 10 | }else{ 11 | $successMessage = "Student Deleted Successfully"; 12 | echo ""; 13 | } 14 | } 15 | ?> 16 |

17 | Do you really want to delete name ?>? 18 |

19 |
20 | 21 | 22 | 23 | 24 |
25 |
26 | 27 |
28 |

29 | 30 | -------------------------------------------------------------------------------- /oop/oop2.php: -------------------------------------------------------------------------------- 1 | studentName1(); 37 | 38 | $objClone = clone $obj; 39 | 40 | // Overrides 41 | class asif { 42 | public $name = "Asif"; 43 | } 44 | 45 | $AsifObj = new asif; 46 | $AsifObj->name = "Asif Abir"; 47 | 48 | echo $AsifObj->name; 49 | 50 | class parrent { 51 | public function someMethod() { 52 | echo "Some Method"; 53 | } 54 | } 55 | 56 | class child extends parrent { 57 | public function someMethod() { 58 | echo "Some Method 2"; 59 | parent::someMethod(); 60 | } 61 | } 62 | 63 | $obj = new child; 64 | $obj->someMethod(); 65 | ?> -------------------------------------------------------------------------------- /t10-array-func.php: -------------------------------------------------------------------------------- 1 | "; 5 | echo count($arr)."
"; 6 | echo array_sum($arr)."
"; 7 | echo array_product($arr)."
"; 8 | sort($arr); 9 | echo "
";
10 |     print_r($arr);
11 |     echo "
"; 12 | rsort($arr); 13 | echo "
";
14 |     print_r($arr);
15 |     echo "
"; 16 | echo in_array(12, $arr)."
"; 17 | $newArr = array_merge($arr, $arr2); 18 | echo "
";
19 |     print_r($newArr);
20 |     echo "
"; 21 | // associative array 22 | $person = [ 23 | "fname" => "Rahim", 24 | "lname" => "Mia", 25 | "age" => 25, 26 | "city" => "Dhaka", 27 | "country" => "Bangladesh" 28 | ]; 29 | $allKeys = array_keys($person); 30 | echo "
";
31 |     print_r($allKeys);
32 |     echo "
"; 33 | $allValues = array_values($person); 34 | echo "
";
35 |     print_r($allValues);
36 |     echo "
"; 37 | echo array_key_exists("fname", $person)."
"; 38 | array_pop($person); 39 | array_shift($person); 40 | array_unshift($person, "Mr."); 41 | array_push($person, "Male"); 42 | $person["profession"] = "Student"; 43 | echo "
";
44 |     print_r($person);
45 |     echo "
"; 46 | array_map(function($n){ 47 | echo $n."
"; 48 | }, $arr); 49 | 50 | $newUniqueArr = array_unique($newArr); 51 | echo "
";
52 |     print_r($newUniqueArr);
53 |     echo "
"; 54 | ?> -------------------------------------------------------------------------------- /t2-data-types.php: -------------------------------------------------------------------------------- 1 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | Document 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /t14-regex.php: -------------------------------------------------------------------------------- 1 | "; // 1 7 | echo preg_match_all($pattern, $str)."
"; // 3 8 | echo preg_replace($pattern, "Hi", $str)."
"; // Hi world! Hi Bangladesh! Hi Dhaka! 9 | echo preg_filter($pattern, "Hi", $str)."
"; // Hi world! Hi Bangladesh! Hi Dhaka! 10 | echo preg_grep($pattern, [$str])."
"; // Array ( [0] => Hello world! Hello Bangladesh! Hello Dhaka! ) 11 | echo preg_split($pattern, $str)."
"; // Array ( [0] => [1] => world! [2] => Bangladesh! [3] => Dhaka! ) 12 | 13 | // $pattern 14 | // /Hello/ - case sensitive 15 | // /Hello/i - case insensitive 16 | 17 | // Character classes 18 | // /h.llo/ - matches any character except newline 19 | // /h[ae]llo/ - matches either 'hello' or 'hallo' 20 | // /h[a-z]llo/ - matches any single character of range a-z 21 | // /h[^e]llo/ - matches any single character except e 22 | 23 | // Quantifiers 24 | // /hel+o/ - matches any string that contains at least one l 25 | // /hel*o/ - matches any string that contains zero or more l 26 | // /hel?o/ - matches any string that contains zero or one l 27 | // /hel{2}o/ - matches any string that contains 2 l 28 | // /hel{2,}o/ - matches any string that contains at least 2 l 29 | // /hel{2,4}o/ - matches any string that contains 2 to 4 l 30 | 31 | // Metacharacters 32 | // /h.llo/ - matches any character except newline 33 | // /h[ae]llo/ - matches either 'hello' or 'hallo' 34 | // /h[a-z]llo/ - matches any single character of range a-z 35 | 36 | ?> -------------------------------------------------------------------------------- /t6-condition.php: -------------------------------------------------------------------------------- 1 | "; 16 | 17 | // switch statement 18 | $age = 36; 19 | switch($age){ 20 | case ($age <= 12): 21 | echo "You are a baby!"; 22 | break; 23 | case ($age <= 19): 24 | echo "You are a teenager!"; 25 | break; 26 | case ($age <= 29): 27 | echo "You are a young person!"; 28 | break; 29 | case ($age <= 49): 30 | echo "You are a middle aged person!"; 31 | break; 32 | default: 33 | echo "You are too young!"; 34 | } 35 | 36 | echo "
"; 37 | 38 | // switch statement 39 | $favcolor = "hotpink"; 40 | switch($favcolor){ 41 | case "red": 42 | echo "Your favorite color is red!"; 43 | break; 44 | case "blue": 45 | echo "Your favorite color is blue!"; 46 | break; 47 | case "green": 48 | echo "Your favorite color is green!"; 49 | break; 50 | default: 51 | echo "Your favorite color is neither red, blue, nor green!"; 52 | } 53 | 54 | echo "
"; 55 | 56 | // ternary operator 57 | $age = 36; 58 | echo ($age >= 18) ? "You are an adult!" : "You are not an adult!"; 59 | 60 | echo "
"; 61 | 62 | // null coalescing operator 63 | echo $personName?? "John Doe"; 64 | 65 | if(isset($personName)){ 66 | echo $personName; 67 | }else{ 68 | echo "John Doe"; 69 | } 70 | ?> -------------------------------------------------------------------------------- /t9-array.php: -------------------------------------------------------------------------------- 1 | "; 6 | for ($i=0; $i < count($personNames); $i++) { 7 | echo $personNames[$i]."
"; 8 | } 9 | echo "
";
10 |     print_r($personNames);
11 |     echo "
"; 12 | 13 | echo "
"; 14 | 15 | foreach ($personNames as $k => $val) { 16 | echo $k." ".$val."
"; 17 | } 18 | 19 | echo "
"; 20 | 21 | // associative array 22 | $person = [ 23 | "fname" => "Rahim", 24 | "lname" => "Mia", 25 | "age" => 25, 26 | "city" => "Dhaka", 27 | "country" => "Bangladesh" 28 | ]; 29 | echo $person["fname"]; 30 | echo "
";
31 |     print_r($person);
32 |     echo "
"; 33 | foreach ($person as $key => $value) { 34 | echo ucfirst($key)." : ".$value."
"; 35 | } 36 | 37 | echo "
"; 38 | 39 | // multidimensional array 40 | $personsInfo = [ 41 | ["Kuddus", 25, "Male", "Cumilla"], 42 | ["Boyati", 35, "Male", "Chittagong"], 43 | ["Hero", 25, "Male", "Bogura"], 44 | ["Alom", 50, "Male", "Joypurhat"], 45 | ["Sakibal Hasan", 40, "Male", "Magura"], 46 | ]; 47 | 48 | echo $personsInfo[1][1]; 49 | 50 | echo "
";
51 |     print_r($personsInfo);
52 |     echo "
"; 53 | 54 | for ($i=0; $i < count($personsInfo); $i++) { 55 | for ($j=0; $j < count($personsInfo[$i]); $j++) { 56 | echo $personsInfo[$i][$j]." "; 57 | } 58 | echo "
"; 59 | } 60 | 61 | echo "
"; 62 | 63 | foreach ($personsInfo as $value) { 64 | foreach ($value as $val) { 65 | echo $val." "; 66 | } 67 | echo "
"; 68 | } 69 | 70 | echo "
"; 71 | ?> -------------------------------------------------------------------------------- /t4-operators.php: -------------------------------------------------------------------------------- 1 | Not equal 25 | * !== Not identical 26 | * > Greater than 27 | * < Less than 28 | * >= Greater than or equal to 29 | * <= Less than or equal to 30 | * <=> Spaceship 31 | */ 32 | 33 | // Assignment operators 34 | /** 35 | * = Assign 36 | * += Add and assign 37 | * -= Subtract and assign 38 | * *= Multiply and assign 39 | * /= Divide and assign 40 | * %= Modulus and assign 41 | * **= Exponentiation and assign 42 | */ 43 | 44 | // Incrementing/Decrementing operators 45 | /** 46 | * ++$x Pre-increment 47 | * $x++ Post-increment 48 | * --$x Pre-decrement 49 | * $x-- Post-decrement 50 | */ 51 | 52 | /* 53 | In PHP, operator precedence determines the order in which operators are evaluated in an expression. Operators with higher precedence are evaluated before operators with lower precedence. If operators have the same precedence, their associativity (left or right) determines the order of evaluation. 54 | 55 | Here is a list of PHP operators in order of precedence from highest to lowest: 56 | 57 | 1. **[** (array subscript) 58 | 2. **->** (object access) 59 | 3. **::** (scope resolution) 60 | 4. **++**, **--** (post-increment, post-decrement) 61 | 5. **~** (bitwise NOT) 62 | 6. **!** (logical NOT) 63 | 7. **-**, **+** (unary minus, unary plus) 64 | 8. **(int)**, **(float)**, **(string)**, **(array)**, **(object)**, **(bool)**, **(unset)** (type-casting) 65 | 9. **\*\*** (exponentiation) 66 | 10. **\*, /, %** (multiplication, division, modulo) 67 | 11. **+, -** (addition, subtraction) 68 | 12. **.** (string concatenation) 69 | 13. **<<, >>** (bitwise shift left, bitwise shift right) 70 | 14. **<, <=, >, >=** (comparison) 71 | 15. **==, !=, ===, !==** (equality, non-equality) 72 | 16. **&** (bitwise AND) 73 | 17. **^** (bitwise XOR) 74 | 18. **|** (bitwise OR) 75 | 19. **&&** (logical AND) 76 | 20. **||** (logical OR) 77 | 21. **?:** (ternary conditional) 78 | 22. **=, +=, -=, *=, /=, .=, %=, &=, |=, ^=, <<=, >>=** (assignment) 79 | 23. **and** (logical AND) 80 | 24. **xor** (logical XOR) 81 | 25. **or** (logical OR) 82 | 83 | Parentheses can be used to override the default precedence and force the evaluation of a specific part of an expression first. 84 | 85 | Here's a simple example to illustrate operator precedence: 86 | 87 | ```php 88 | $result = 2 + 3 * 4; // Multiplication has higher precedence than addition 89 | echo $result; // Output: 14 90 | ``` 91 | 92 | In this example, the multiplication operation (`3 * 4`) is performed first due to its higher precedence, and then the result is added to 2. 93 | 94 | It's a good practice to use parentheses to make your code more readable and to explicitly specify the order of operations when necessary. 95 | 96 | */ -------------------------------------------------------------------------------- /oop/magic_methods.php: -------------------------------------------------------------------------------- 1 | data[$name]; 19 | } 20 | 21 | public function __set($name, $value) 22 | { 23 | $this->data[$name] = $value; 24 | } 25 | 26 | public function __isset($name) 27 | { 28 | return isset($this->data[$name]); 29 | } 30 | 31 | public function __unset($name) 32 | { 33 | unset($this->data[$name]); 34 | } 35 | 36 | public function __call($method, $args) 37 | { 38 | echo "Calling object method '$method' with arguments " 39 | . implode(', ', $args). "\n"; 40 | } 41 | 42 | public static function __callStatic($method, $args) 43 | { 44 | echo "Calling static method '$method' with arguments" 45 | . implode(', ', $args). "\n"; 46 | } 47 | 48 | public function __toString() 49 | { 50 | return "Instance of " . __CLASS__ . "\n"; 51 | } 52 | 53 | public function testing () 54 | { 55 | echo "ha ha ha"; 56 | } 57 | 58 | public function __construct($arg) 59 | { 60 | echo "Constructor\ncalled $arg
"; 61 | } 62 | 63 | public function __destruct() 64 | { 65 | echo "
Destructor called
"; 66 | } 67 | 68 | public function __invoke($x) 69 | { 70 | var_dump($x); 71 | } 72 | } 73 | 74 | $obj = new GetSet("Asif"); 75 | $obj->name = "Aslam"; 76 | echo $obj->name; 77 | echo "
"; 78 | echo $obj; 79 | echo "
"; 80 | echo isset($obj->name); 81 | echo "
"; 82 | unset($obj->name); 83 | echo isset($obj->name); 84 | echo "
"; 85 | $obj->runTest('Hi', "Hello", "Assalamuoyalikum"); 86 | echo "
"; 87 | GetSet::runTest('Hi', "Hello", "Assalamuoyalikum"); 88 | echo "
"; 89 | $obj->testing(); 90 | echo "
"; 91 | $obj->test(); 92 | echo "
"; 93 | $obj(5); 94 | 95 | ?> -------------------------------------------------------------------------------- /t7-problem-solving-1.php: -------------------------------------------------------------------------------- 1 | "; 18 | 19 | // A PHP calculator using switch case (Addition, Subtraction, Multiplication, Division) 20 | 21 | $num1 = 20; 22 | $num2 = 5; 23 | $operator = "/"; 24 | switch($operator){ 25 | case "+": 26 | echo $num1 + $num2; 27 | break; 28 | case "-": 29 | echo $num1 - $num2; 30 | break; 31 | case "*": 32 | echo $num1 * $num2; 33 | break; 34 | case "/": 35 | echo $num1 / $num2; 36 | break; 37 | default: 38 | echo "Invalid operator!"; 39 | } 40 | ?> 41 | 42 | 65 | 66 |
67 | 68 | 69 | 75 | 76 |
77 | 78 | = 18){ 82 | echo "You are eligible to vote!"; 83 | }else{ 84 | echo "You are not eligible to vote!"; 85 | } 86 | 87 | echo "
"; 88 | // Check if a person is eligible for marriage in BD by gender. 89 | $age = 18; 90 | $gender = "Male"; 91 | if($gender === "Male"){ 92 | if($age >= 21){ 93 | echo "You are eligible for marriage!"; 94 | }else{ 95 | echo "You are not eligible for marriage!"; 96 | } 97 | }else{ 98 | if($age >= 18){ 99 | echo "You are eligible for marriage!"; 100 | }else{ 101 | echo "You are not eligible for marriage!"; 102 | } 103 | } 104 | 105 | echo "
"; 106 | 107 | // Check if number is positive or negetive 108 | $num = -5; 109 | if($num > 0){ 110 | echo "Positive"; 111 | }elseif($num < 0){ 112 | echo "Negetive"; 113 | }else{ 114 | echo "Zero"; 115 | } 116 | 117 | echo "
"; 118 | 119 | // Check if number is odd or even 120 | $num = 0; 121 | if($num % 2 === 0){ 122 | echo "Even"; 123 | }else{ 124 | echo "Odd"; 125 | } 126 | 127 | echo "
"; 128 | 129 | // Check if data is integer or string 130 | $data = "Hadudu"; 131 | if(is_int($data)){ 132 | echo "Integer"; 133 | }else{ 134 | echo "String"; 135 | } 136 | ?> -------------------------------------------------------------------------------- /query.sql: -------------------------------------------------------------------------------- 1 | -- query for create database b81 2 | CREATE DATABASE `b81`; 3 | CREATE DATABASE IF NOT EXISTS `b81`; 4 | 5 | -- query to drop database b81 6 | /* DROP DATABASE `b81`; 7 | DROP DATABASE IF EXISTS `b81`; */ 8 | 9 | -- query to create table users 10 | CREATE TABLE `users` ( 11 | `id` INT(11) NOT NULL AUTO_INCREMENT, 12 | `name` VARCHAR(100) NOT NULL, 13 | `email` VARCHAR(100) NOT NULL, 14 | `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 15 | PRIMARY KEY (`id`) 16 | ); 17 | 18 | -- query to create table products 19 | CREATE TABLE `products` ( 20 | `id` INT(11) NOT NULL AUTO_INCREMENT, 21 | `name` VARCHAR(100) NOT NULL, 22 | `price` DECIMAL(10,2) NOT NULL, 23 | `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 24 | PRIMARY KEY (`id`) 25 | ); 26 | 27 | -- query to create table orders 28 | CREATE TABLE `orders` ( 29 | `id` INT(11) NOT NULL AUTO_INCREMENT, 30 | `product_id` INT(11) NOT NULL, 31 | `user_id` INT(11) NOT NULL, 32 | `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 33 | PRIMARY KEY (`id`), 34 | FOREIGN KEY (`product_id`) REFERENCES `products` (`id`), 35 | FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) 36 | ); 37 | 38 | -- query to insert single data into table users 39 | INSERT INTO `users` (`name`, `email`) VALUES ('Sumaiya Sima', 'sima@gmail.com'); 40 | 41 | -- query to insert multiple data into table users 42 | INSERT INTO `users` (`name`, `email`) VALUES 43 | ('Md Mokbul', 'mokbul@gmail.com'), 44 | ('Shadia Rahman', 'shadia@gmail.com'), 45 | ('Asif', 'asif@gmail.com'); 46 | 47 | -- query to select all data from table users 48 | SELECT * FROM `users`; 49 | 50 | -- query to select single data from table users 51 | SELECT * FROM `users` WHERE `email` = 'sima@gmail.com'; 52 | SELECT * FROM `users` WHERE `id` > 0 AND `id` <= 3; 53 | SELECT * FROM `users` WHERE `id` != 3; 54 | SELECT `name`, `email` FROM `users` WHERE `id` != 3 AND `id` >= 1; 55 | SELECT `name` AS `User Name`, `email` AS `User Email` FROM `users` WHERE `id` != 3 AND `id` >= 1; 56 | SELECT `users`.`name` AS `User Name`, `users`.`email` AS `User Email` FROM `users` WHERE `id` != 3 AND `id` >= 1; 57 | SELECT `b81`.`users`.`name` AS `User Name`, `b81`.`users`.`email` AS `User Email` FROM `users` WHERE `id` != 3 AND `id` >= 1 ORDER BY `id` DESC; 58 | 59 | -- query to inert multiple data into table products 60 | INSERT INTO `products` (`name`, `price`) VALUES 61 | ('Laptop', 50000), 62 | ('Mobile', 20000), 63 | ('TV', 30000), 64 | ('AC', 50000), 65 | ('Car', 2000000), 66 | ('Bike', 300000), 67 | ('Washing Machine', 30000); 68 | 69 | -- query to add new column quantity and total price in table orders 70 | ALTER TABLE `orders` ADD `quantity` INT(11) NOT NULL AFTER `user_id`, ADD `total_price` INT(11) NOT NULL AFTER `quantity`; 71 | 72 | -- query to change the column name total_price to price in table orders 73 | -- ALTER TABLE `orders` CHANGE `total_price` `price` INT(11) NOT NULL; 74 | 75 | -- query to delete the column total_price in table orders 76 | -- ALTER TABLE `orders` DROP `total_price`; 77 | 78 | -- query to insert data into table orders 79 | INSERT INTO `orders` (`product_id`, `user_id`, `quantity`) VALUES 80 | (1, 1, 2), 81 | (2, 1, 1), 82 | (3, 1, 1), 83 | (4, 1, 1), 84 | (5, 1, 1), 85 | (6, 1, 1), 86 | (7, 1, 1); 87 | 88 | 89 | -- query to update the column total_price where it's value is equal `products`.`price` * `orders`.`quantity` 90 | UPDATE `orders` 91 | INNER JOIN `products` ON `products`.`id` = `orders`.`product_id` 92 | SET `orders`.`total_price` = `products`.`price` * `orders`.`quantity`; 93 | 94 | -- query to UPDATE products table 95 | UPDATE `products` SET `name` = 'Toyota Car' WHERE `id` = 5; 96 | 97 | -- query to DELETE orders table 98 | DELETE FROM `orders` WHERE `id` = 2; 99 | 100 | SELECT `users`.`name` AS `Customer Name`, `products`.`name` AS `Product Name`, `products`.`price` AS `Product Price`, `orders`.`quantity` AS `Quantity`, `orders`.`total_price` AS `Total Price` FROM `orders` INNER JOIN `users` ON `users`.`id` = `orders`.`user_id` INNER JOIN `products` ON `products`.`id` = `orders`.`product_id`; 101 | 102 | -- Select all data from multiple tables 103 | SELECT `users`.`name` AS `Customer Name`, `products`.`name` AS `Product Name`, `products`.`price` AS `Product Price`, `orders`.`quantity` AS `Quantity`, `orders`.`total_price` AS `Total Price` FROM `orders` INNER JOIN `users` ON `users`.`id` = `orders`.`user_id` INNER JOIN `products` ON `orders`.`product_id` = `products`.`id` WHERE `orders`.`user_id` != 1 AND `products`.`id` >= 1 ORDER BY `orders`.`id` DESC 104 | 105 | -------------------------------------------------------------------------------- /b81.sql: -------------------------------------------------------------------------------- 1 | -- phpMyAdmin SQL Dump 2 | -- version 5.2.1 3 | -- https://www.phpmyadmin.net/ 4 | -- 5 | -- Host: 127.0.0.1 6 | -- Generation Time: Jan 06, 2024 at 10:10 AM 7 | -- Server version: 10.4.28-MariaDB 8 | -- PHP Version: 8.2.4 9 | 10 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 11 | START TRANSACTION; 12 | SET time_zone = "+00:00"; 13 | 14 | 15 | /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; 16 | /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; 17 | /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; 18 | /*!40101 SET NAMES utf8mb4 */; 19 | 20 | -- 21 | -- Database: `b81` 22 | -- 23 | 24 | -- -------------------------------------------------------- 25 | 26 | -- 27 | -- Table structure for table `orders` 28 | -- 29 | 30 | CREATE TABLE `orders` ( 31 | `id` int(11) NOT NULL, 32 | `product_id` int(11) NOT NULL, 33 | `user_id` int(11) NOT NULL, 34 | `quantity` int(11) NOT NULL, 35 | `total_price` int(11) NOT NULL, 36 | `created_at` timestamp NOT NULL DEFAULT current_timestamp() 37 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; 38 | 39 | -- 40 | -- Dumping data for table `orders` 41 | -- 42 | 43 | INSERT INTO `orders` (`id`, `product_id`, `user_id`, `quantity`, `total_price`, `created_at`) VALUES 44 | (1, 1, 3, 2, 40, '2024-01-06 09:09:00'), 45 | (2, 2, 2, 1, 20000, '2024-01-06 09:09:00'); 46 | 47 | -- -------------------------------------------------------- 48 | 49 | -- 50 | -- Table structure for table `products` 51 | -- 52 | 53 | CREATE TABLE `products` ( 54 | `id` int(11) NOT NULL, 55 | `name` varchar(100) NOT NULL, 56 | `brand` varchar(100) NOT NULL, 57 | `regular_price` int(7) NOT NULL, 58 | `discount_price` int(7) DEFAULT NULL, 59 | `type` varchar(50) NOT NULL, 60 | `unit` varchar(20) NOT NULL, 61 | `created_at` timestamp NOT NULL DEFAULT current_timestamp() 62 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; 63 | 64 | -- 65 | -- Dumping data for table `products` 66 | -- 67 | 68 | INSERT INTO `products` (`id`, `name`, `brand`, `regular_price`, `discount_price`, `type`, `unit`, `created_at`) VALUES 69 | (1, 'Chanachur', 'Pran', 20, NULL, 'Food', 'Packet', '2024-01-06 09:00:19'), 70 | (2, 'Mobile', 'Samsung', 22000, 20000, 'Electronics', 'Pice', '2024-01-06 09:02:36'), 71 | (3, 'Mojo', 'Local', 30, NULL, 'Drinks', 'Litter', '2024-01-06 09:02:36'); 72 | 73 | -- -------------------------------------------------------- 74 | 75 | -- 76 | -- Table structure for table `users` 77 | -- 78 | 79 | CREATE TABLE `users` ( 80 | `id` int(11) NOT NULL, 81 | `name` varchar(100) NOT NULL, 82 | `uname` varchar(100) NOT NULL, 83 | `email` varchar(150) NOT NULL, 84 | `mobile` int(15) NOT NULL, 85 | `gender` varchar(10) NOT NULL DEFAULT 'Female', 86 | `password` varchar(255) NOT NULL, 87 | `created_at` timestamp NOT NULL DEFAULT current_timestamp() 88 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; 89 | 90 | -- 91 | -- Dumping data for table `users` 92 | -- 93 | 94 | INSERT INTO `users` (`id`, `name`, `uname`, `email`, `mobile`, `gender`, `password`, `created_at`) VALUES 95 | (1, 'Md Mokbul', 'mokbul123', 'mokbul@gmail.com', 1711223344, 'Male', 'e10adc3949ba59abbe56e057f20f883e', '2024-01-06 08:51:18'), 96 | (2, 'Sumaiya Akter Sima', 'sima123', 'sima@gmail.com', 1912121212, 'Female', 'e10adc3949ba59abbe56e057f20f883e', '2024-01-06 08:54:07'), 97 | (3, 'Shadia Rahman', 'shadia123', 'shadia@gmail.com', 1812121212, 'Female', 'e10adc3949ba59abbe56e057f20f883e', '2024-01-06 08:54:07'), 98 | (4, 'asif', 'asif', 'asif@gmail.com', 195517560, 'Male', 'e10adc3949ba59abbe56e057f20f883e', '2024-01-06 08:56:24'); 99 | 100 | -- 101 | -- Indexes for dumped tables 102 | -- 103 | 104 | -- 105 | -- Indexes for table `orders` 106 | -- 107 | ALTER TABLE `orders` 108 | ADD PRIMARY KEY (`id`), 109 | ADD KEY `product_id` (`product_id`), 110 | ADD KEY `user_id` (`user_id`); 111 | 112 | -- 113 | -- Indexes for table `products` 114 | -- 115 | ALTER TABLE `products` 116 | ADD PRIMARY KEY (`id`); 117 | 118 | -- 119 | -- Indexes for table `users` 120 | -- 121 | ALTER TABLE `users` 122 | ADD PRIMARY KEY (`id`); 123 | 124 | -- 125 | -- AUTO_INCREMENT for dumped tables 126 | -- 127 | 128 | -- 129 | -- AUTO_INCREMENT for table `orders` 130 | -- 131 | ALTER TABLE `orders` 132 | MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3; 133 | 134 | -- 135 | -- AUTO_INCREMENT for table `products` 136 | -- 137 | ALTER TABLE `products` 138 | MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4; 139 | 140 | -- 141 | -- AUTO_INCREMENT for table `users` 142 | -- 143 | ALTER TABLE `users` 144 | MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5; 145 | 146 | -- 147 | -- Constraints for dumped tables 148 | -- 149 | 150 | -- 151 | -- Constraints for table `orders` 152 | -- 153 | ALTER TABLE `orders` 154 | ADD CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`), 155 | ADD CONSTRAINT `orders_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`); 156 | COMMIT; 157 | 158 | /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; 159 | /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; 160 | /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 161 | -------------------------------------------------------------------------------- /t18-form-validation.php: -------------------------------------------------------------------------------- 1 | Student name can not be empty"; 15 | }elseif(!preg_match("/^[a-zA-Z. ]*$/", $sname)){ 16 | $errName = "Only letters and white space allowed"; 17 | }else{ 18 | $crrName = $sname; 19 | } 20 | 21 | if (empty($semail)) { 22 | $errEmail = "Student email can not be empty"; 23 | } elseif (!filter_var($semail, FILTER_VALIDATE_EMAIL)) { 24 | $errEmail = "Invalid email format"; 25 | } else { 26 | $crrEmail = $semail; 27 | } 28 | 29 | if (empty($gender)) { 30 | $errGender = "Please select your gender"; 31 | }else{ 32 | $crrGender = $gender; 33 | } 34 | 35 | if (empty($skills)) { 36 | $errSkills = "Please select your skills"; 37 | }else{ 38 | $crrSkills = $skills; 39 | } 40 | 41 | if (empty($country)) { 42 | $errCountry = "Please select your country"; 43 | }else{ 44 | $crrCountry = $country; 45 | } 46 | 47 | if (empty($pass)) { 48 | $errPass = "Password can not be empty"; 49 | }elseif(!preg_match("/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/", $pass)){ 50 | $errPass = "Provide a strong password"; 51 | }else{ 52 | $crrPass = $pass; 53 | } 54 | 55 | if(!empty($pass) && !empty($cpass)){ 56 | if($pass != $cpass){ 57 | $errPass = "Password and confirm password must be same"; 58 | } 59 | } 60 | } 61 | ?> 62 |
63 | 64 | 65 |

66 | 67 | 68 |

69 | Student Gender : 70 | >Male 71 | >Female 72 | 73 |

74 | Student Skills: 75 | >PHP 76 | >Java 77 | >Python 78 | >C++ 79 | 80 |

81 | 93 | 94 |

95 | 96 | 97 |

98 | 99 | 100 |

101 | 102 |
103 | 104 |
105 | "; 109 | echo $crrEmail ?? null; 110 | echo "
"; 111 | echo $crrGender ?? null; 112 | echo "
"; 113 | foreach ($crrSkills as $k => $skill) { 114 | if($k == count($crrSkills)-1){ 115 | echo $skill; 116 | break; 117 | } 118 | echo $skill.", "; 119 | }; 120 | echo "
"; 121 | echo $crrCountry ?? null; 122 | $crrName = $crrEmail = $crrGender = $crrSkills = $crrCountry = $crrPass = $cpass = null; 123 | } 124 | ?> 125 |
--------------------------------------------------------------------------------