Kształcenie Ustawiczne odpowiedzią na zapotrzebowanie rynku pracy
Transkrypt
Kształcenie Ustawiczne odpowiedzią na zapotrzebowanie rynku pracy
Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 8 dr inż. Jacek Mazurkiewicz e-mail: [email protected] Dynamicznie tworzony formularz // nazwa tabeli, liczba pól <HTML> <HEAD> <TITLE>Tworzenie tabeli bazy – krok 1</TITLE> </HEAD> <BODY> <H1>Nazwa tabeli i liczba pól<H1> <FORM METHOD=”post” ACTION=”do_fielddef.php”> <P><strong>Nazwa tabeli:</strong><br> <INPUT TYPE=”text” NAME=”table_name” SIZE=30></P> <P><strong>Liczba pól:</strong><br> <INPUT TYPE=”text” NAME=”num_fields” SIZE=5></P> <P><INPUT TYPE=”submit” NAME=”submit” VALUE=”Krok 2”></P> </FORM> </BODY> </HTML> • zmienne $table_name oraz $num_fields // definiowanie pól <?php if ((!$table_name) || (!$num_fields)) { echo ”Coś nie tak”; exit; } $form_block = ”<FORM METHOD=\”POST\” ACTION=\”do_table.php\”> <INPUT TYPE=\”hidden\” NAME=\”table_name\” VALUE=\”$table_name\”> <TABLE CELLSPACING=5 CELLPADING=5> <TR> <TH>NAZWA POLA</TH><TH>TYP POLA</TH><TH>DŁUGOŚĆ POLA</TH></TR>”; for ($i=0; $i < $num_fields; $i++) { $form_block .= ” <TR> <TD ALIGN=CENTER><INPUT TYPE=\”text\” NAME=\”field_name[]\” SIZE=\”30\”></TD> <TD ALIGN=CENTER> <SELECT NAME=\”field_type[]\”> <OPTION VALUE=\”char\”>char</OPTION> <OPTION VALUE=\”date\”>date</OPTION> <OPTION VALUE=\”float\”>float</OPTION> <OPTION VALUE=\”int\”>int</OPTION> <OPTION VALUE=\”text\”>text</OPTION> <OPTION VALUE=\”varchar\”>varchar</OPTION> </SELECT> </TD> <TD ALIGN=CENTER><INPUT TYPE=\”text\” NAME=\”field_lenght[]\” SIZE=\”5\”></TD> </TR> ”; } // koniec for $form_block .= ” <TR> <TD ALIGN=CENTER COLSPAN=3><INPUT TYPE=\”submit\” VALUE=\”Twórz tabelę\”></TD> </TR> </TABLE> </FORM> ”; ?> <HTML> <HEAD> <TITLE>Tworzenie tabeli bazy – krok 2</TITLE> </HEAD> <BODY> <H1>Zdefiniuj pola dla <?php echo ”$table_name”; ?></H1> <?php echo ”$form_block”; ?> </BODY> </HTML> • to będzie w pliku do_fielddef.php // tworzenie tabeli już ostatecznie <?php $db_name = ”testBD”; $con = @mysql_connect(”localhost”, ”user”, ”pass”) or die(”Nic z tego”); $db = @mysql_select_db($db_name, $con) or die(”Błąd wyboru”); $sql = ”CREATE TABLE $table_name (”; for ($i = 0; $i < count($field_name); $i++) { $sql .= ”$field_name[$i] $field_type[$i]”; if ($field_lenght[$i] != ””) <HTML> { $sql .= ” ($field_lenght[$i]),”; <HEAD> } <TITLE>Krok 3</TITLE> else </HEAD> { $sql .= ”,”; <BODY> } <?php echo ”$msg”; ?> } </BODY> $sql = substr($sql, 0, -1); </HTML> $sql .= ”)”; $result = @mysql_query($sql, $con) or die(”Nic z tego”); if ($result) { $msg = ”<P>$table_name została utworzona</P>”; } ?> Wyświetlanie zawartości katalogu <?php $dir_name = ”/windows/pulpit/downloads/” $dir = opendir($dir_name); $file_list = ”<ul>”; while ($file_name = readdir($dir)) { if(($file_name != ”.”) && ($file_name != ”..”)) $file_name .= ”<li>$file_name”; } $file_list .= ”</ul>”; closedir($dir); ?> <HTML> <HEAD> <TITLE>Directory listing</TITLE> </HEAD> <BODY> <P>Pliki w: <?php echo ”$dir_name”; ?></P> <?php echo ”$file_list”; ?> Tworzenie nowego pliku <?php $filename = ”/apache/dane.txt”; if(file_exists($filename)) $msg = ”<P>Plik już jest.</P>; else { $newfile = @fopen($filename, ”w+”) or die(”Nie udało się”); fclose($newfile); $msg =”<P>Utworzono plik!</P>”; } ?> <HTML> <HEAD> <TITLE>Creating a new file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> Dołączanie danych do pliku <?php $filename = ”/apache/dane.txt”; $newstring = ”Text do pliku\n z nową linią”; $newfile = @fopen($filename, ”w+”) or die(”Nie udało się”); @fwrite($newfile, $newstring) or die(”Błąd”); $msg = ”<P>Plik zawiera dane</P>”; fclose($newfile); ?> <HTML> <HEAD> <TITLE>Adding data to a file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> Odczyt danych z pliku <?php $filename = ”/apache/dane.txt”; $whatread = @fopen($filename, ”r”) or die(”Błąd”); $file_con = fread($whatread, filesize($filename)); $msg = ”Plik zawiera:<br>$file_con”; fclose($whatread); ?> <HTML> <HEAD> <TITLE>Reading data from a file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> Kopiowanie plików <?php $source = ”/apache/dane.txt”; $dest = ”/apache/danestare.txt”; $yes = @copy($source, $dest) or die(”Błąd”); if($yes) $msg = ”Kopiowanie się powiodło”; else $msg = ”Kopiowanie się nie udało”; ?> <HTML> <HEAD> <TITLE>Copy a file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> Zmiana nazw plików <?php $old_name = ”/apache/dane.txt”; $new_name = ”/apache/danestare.txt”; $yes = @rename($old_name, $new_name) or die(”Błąd”); if($yes) $msg = ”Zmiana nazwy się powiodła”; else $msg = ”Nie udało się zmienić nazwy”; ?> <HTML> <HEAD> <TITLE>Rename a file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> Usuwanie plików <?php $file_name = ”/apache/dane.txt”; $yes = @unlink($file_name) or die(”Błąd”); if($yes) $msg = ”Plik został usunięty”; else $msg = ”Nie udało się usunąć pliku”; ?> <HTML> <HEAD> <TITLE>Delete a file</TITLE> </HEAD> <BODY> <?php echo ”$msg”; ?> </BODY> </HTML> feof – koniec pliku int feof(id-plik) • zwraca wartość logiczną czy osiągnięto koniec pliku fgets – odczyt linii pliku string fgets(id-plik, [int limit]) • zwraca linię pliku – ogranicznik \n, chyba, że wcześniej EOF albo limit fgetss – odczyt linii pliku string fgetss(id-plik, [int limit], [string znaczniki]) • zwraca linię pliku – ogranicznik \n, chyba, że wcześniej EOF albo limit, usuwa znaczniki PHP i HTML oraz wyszczególnione w wywołaniu fgetcsv – odczyt do separatora string fgetcsv(id-plik, [int limit], string znaczniki) • zwraca fragment pliku – ograniczonego znacznikami fgetc – odczyt pojedynczego znaku char fgetc(id-plik) • zwraca pojedynczy znak odczytany z pliku rewind – przewinięcie pliku do początku int rewind(id-plik) • jeśli przewinięcie pliku się nie powiodło zwraca zero ftell – bieżąca pozycja pliku int ftell(id-plik) • zwraca bieżącą pozycję wskaźnika pliku – o ile w bajtach wskaźnik pliku jest przesunięty od początku fseek – umieszczenie wskaźnika pliku w żądanym miejscu int fseek(id-plik, int offset) • umieszcza wskaźnik offset bajtów od początku flock – blokada pliku int flock(id-plik, int akcja) • akcja: 1 - odczyt, 2 - wyłączność, 3 - zwolnienie, +4 - przeciwdziałanie