Práce s řetězci(string) pomocí funkcí
addslashes() - opatří řetězci lomítky
příklad:
$a = ‘Jmenuješ se O“reilly?’;
echo addslashes($a); // Vypíše: Jmenuješ se O\“reilly?
chop() - odstraní mezery na konci řetězce
příklad: echo chop (‘ahoj ‘).’pane’; //vypíše: ahojpane
chr(ASCII) – zapíše řetězec podle ASCII
příklad: echo chr(97); //vypíše: a
chunk_split(řetězec, délka, oddělovač) – rozdělí řetězec na několik částí a oddělí je
příklad: echo chunk_split(’55882266′,’2′,’-’); //vypíše: 55-88-22-66-
Explode(oddělovač,řetězec) - rozdělí řetězec na pole
příklad:
$a=‘a:b:c’;
$b=explode(‘:’,$a);
echo $b[1] ; //vypíše: b
crypt(řetězec, základ) - podle dvojpísmeného základu zakóduje řetězec
příklad: echo crypt(‘internet’,'ii’); //vypíše: iiLE8pV8k0S7
htmlspecialchars(řetězec) - převede zvláštní znaky do HTML
příklad: echo htmlspecialchars(‘<strong>tučný text</strong>’); //vypíše: <strong>tučný text</strong>
htmlentities(řetězec) – stejný jako předchozí funkce s tím rozdílem, že jinak interpretuje české znaky
příklad: echo htmlentities(‘ěščřžýáíéúů’); //vypíše: ìšèøžýáíéúù
join(oddělovač,pole) - vytvoří z pole řetězec a prvky oddělí, je stejná jako funkce implode, používá se však méně
příklad:
$ahoj=array(’0′,’1′,’2′,’3′,’4′);
echo join(‘,’,$ahoj); //vypíše: 1,2,3,4
implode(pole,oddělovač) – vytvoří z pole řetězec a prvky oddělí
příklad:
$ahoj=array(’0′,’1′,’2′,’3′);
echo implode($ahoj,‘.’); //vypíše: 0.1.2.3
ltrim(řetězec) – odstraní prázdné znaky na začátku řetězce
příklad: echo ltrim(‘ ahoj’); //vypíše:ahoj
ord(řetězec) – zapíše řetězec v ASCII kódu
příklad: echo ord(a); //vypíše: 97
parse_Str(řetězec) – rozdělí řetězec dotazu na proměné
příklad:
parse_Str(‘action=index’);
echo ($action); //vypíše: index
echo – funkce, která nám vypisuje proměnné a text
příklad:
$a=‘ok’;
echo ‘all is ‘.$a; //vypíše: all is ok
print () – vypíše řetězec stejně jako echo, je však pomalejší, ale zato vrací hodnotu True nebo False. Způsob použití se dále liší při výpisu proměnné.
dále je tu print_r která nám umožní vypsat
příklad:
$a=array(’0′,’1′,’2′,’3′);
print_r ($a); //vypíše: Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
rawurlencode() - zakoduje řetězec do url
příklad: echo rawurlencode(‘asžřžgf’); //vypíše: as%C5%BE%C5%99%C5%BEgf
rawurldecode() - odkoduje řetězec z url
příklad: echo rawurldecode(„%EC%9A%E8%F8%9E%FD%E1″) // vypíše: ěščřžýá
similar_text(řetězec1, řetězec2) - Spočítá, kolik písmen mají stejné části řetězců
příklad: echo similar_text(‘banan’,'bananovnik’) // vypíše:4 (banan)
str_replace(hledaná část, náhrada, řetězec) – nahradí hledanou část
příklad:
$text=‘Dnes je den.’;
echo str_replace(‘den’,'pondeli’,$text) ; //vypíše: Dnes je pondělí.
strip_tags(řetězec) - odstraní z řetězce tagy html a php (vhodné v knize návštev)
příklad: echo strip_tags(‘<b>text</b>’); // vypíše ‘text’
stripslashes(řetězec) - odstraní z řetězce zpětné lomítko\
$a=‘\a’;
echo stripslashes($a);//vypíše: a místo /a
strlen(řetězec) - vypočítá délku řetězce
příklad:
$a=‘abcd’;
echo strlen($a); //vypíše: 4
strrev(řetězec) - pomůže nám obrátit řetězec
příklad:
echo strrev(internet);// vypíše: tenretni
ucwords(řetězec) - vypíše každé slovo s velkým písmenem, tato funkce může být nahrazena pomocí CSS {text-transform:capitalize;}
příklad: echo ucwords(‘pepa novak’); //vypíše: Pepa Novak
ucfirst(řetězec) – vypíše první písmeno řetězce velké
příklad: echo ucfirst(‘pepa novak’); //vypíše: Pepa novak
substr(řetězec, začátek, počet znaků) - pomůže nám vybrat pouze část řetězce
příklad: echo substr(‘nejkoulinkulatejsi’,’3′,’5′);//vypíše: kouli
strtolower(řetězec) - všechna velká písmena převede na malá, tato funkce může být nahrazena pomocí CSS {text-transform:lowercase;}
příklad:
$a=‘Pepa Novak’;
echo strtolower($a); //vypíše: pepa novak
strtoupper(řetězec) - převede všechna malá písmena na velká, tato funkce může být nahrazena pomocí CSS {text-transform:uppercase;}
$a=‘Pepa Novak’;
echo strtoupper($a); //vypíše: pepa novak
Funkce str_replace()
Tato funkce nám umožní nahradit všechny výskyty jednoho řetězce dalším řetězcem. Lze užít například na zobrazení smajlíků do návštěvní knihy.
str_replace obsahuje 3 parametry 1. co nahradit 2. čím to nahradit 3. v čem to nahradit. První i druhý parametr mohou být také řetězce.
např:
$text=‘Dnes je den.’;
echo str_replace(‘den’,‘pondeli’,$text) ; //slovo Pondělí nám nahradí slovo den, Takže se nám vypíše: Dnes je pondělí.
Mysql join
Dnes si ukážeme jednoduché spojení tabulky
Vememe dvě tabulky s názvem lide a vek
tabulka lidé
sloupce id , jmeno ,prijmeni
tabulka vek
sloupce id,id_lide,vek
select l.jmeno as jmeno, l.prijmeni as prijmeni, v.vek as vek from lide as l join vek as v on(l.id=v.id_lide) where o.vek = 25
V tomto případě jsme si spojili tyto dvě tabulky pomoci id a id_lide co mame jako indexy
tabulku vek jsme si prejmenovali na v a lide na l (z důvodu kratšího zápisu) a pomocí join sme si je spojili do jedné tabulky a nasledně si pojmenovali jeji sloupce a ted už stím můžeme pracovat jako s normální tabulkou
QT Telnet
Pro připojení na telnet pomocí QT4 jsem použil QTcpSocket
Následně na to jsem si vytvořil funkci na připojení
#include <QString>
#include <QDebug>
#include <QtNetwork/QFtp>
#include <QtNetwork/QTcpSocket>
#include <mainwindow.h>
#include <QTcpSocket>
QTcpSocket *tcpSocket;
void telnet_connect() { //definice názvu funkce
tcpSocket = new QTcpSocket(); //nadefinování promenné
tcpSocket->connectToHost(„ip adresa“, „císlo portu“); //zde si nadefinuji ip adresu a port na kterem server prima telnet
bool connected = tcpSocket->waitForConnected(1000); //cekani na odpoved 1000 ’1 vteřina
if (connected) {
tcpSocket->write(„heslo\n“); //zde zadáme paramert na odeslani nezapomoiname na \n jinak se nám přikaz neprovedl
tcpSocket->flush();
qDebug()<< „spojeni v poradku“;
}
//kdyby byla chyba
else {
qDebug()<< „Chyba (error “ << tcpSocket->error() << ‘)’;
}
}
zde jsem si nadefinoval funkci na odeslání příkazu telnetu
void telnet_ovladani(QString prikaz){ //definice nazvu funkce
QByteArray pp = „“; //díme prikaz dohromady
pp.append(prikaz);
pp.append(„\n“);
tcpSocket->write(pp); //odesleme přikaz
tcpSocket->flush();
}
Funkce Explode a Implode
Explode je zajimavá funkce pomocí které můžeme rozdělit řetězec na pole. Tato funkce má 2 parametry Prvním parametrem této funkce je oddělovat, např. (:), a druhým parametrem je samotná část řetěžce,např. ($retezec). Pokud tedy máme $retezec, která obsahuje více parametrů můžeme jí rozdělit pomocí této funkce.
Příklad:
<?php
$retezec=„Banán:Mrkev:Okurka:Květák:Pažitka“;
$vypis=explode(„:“,$retezec) ;
print_r ($vypis); //pro vypsání lze použít i
echo ‘$vypis[0]‘; //v tom případě by nám to vypsalo pouze pole [0] - Banán
?>
Opakem této funkce je Implode. Ta nám pomůže více znaků z pole vložit do jednoho řetěžce
Příklad:
<?php
$zelenina= array(„paprika“,“okurka“,“salát“,“tykev“.“pažitka“) ;
echo „zelenina:“.implode(„,“,$zelenina);
?>
Zpracování formuláře pomocí php
Dnes si ukážeme jak na zpracování forumalě pomocí php
Nejdříve si musíme vytvořit jednoduchý formulař v html
<form method=“post“ action=“#“>
<input type=“text“ name=“nazev“>
<input type=“submit“ value=“Odeslat“>
</form>
Jednoduchý forumulář v html máme již pripraven a můžeme se pustit do jeho zpracování.
Formulář se nám bude odesílat formou post (method=“post“) sám na sebe(action=“#“)
následně na si napíšeme skrypt na zpracování formulaře a vypíšeme jeho zadané hodnoty
1. if(!empty($_POST["nazev"])){
2. echo $_POST["nazev"];
3. }
Tento script nám pouze vypíše obsah pole co uživatel zadal.
Na řádku jedna máme podmínky na to aby se nám skrypt provedl jen pouze tehdy pokud je formular odeslat a není prázdný
Na řádku dvě máme vypis daného pole ve formuláři.
Na řádku tři je již ukončená podmínka z řádku jedna.
Celý tento script je již hoto.
Ps nezapoměnte php dát mezy tagy <?php …. ?>