Դաս 75 – PHP։ INSERT, UPDATE, DELETE Prepar-ի միջոցով

0

Դուք կարող եք օգտագործել prepared statements որպեսզի նոր record (գրառում) կատարեք: Կապվե՛ք սերվերի և դատաբազայի հետ mysqli-ի միջոցով

$db_found = new mysqli(DB_SERVER, DB_USER, DB_PASS, $database );

Կստանաք այս տողը՝

$SQL = $db_found->prepare(“INSERT INTO members (username, password, email) VALUES (?, ?, ?)”);

Այստեղ մենք կրկին կիրառում ենք prepare ֆունցկիան: prepare-ի փակագծերի միջև հետևյալն է՝

“INSERT INTO members (username, password, email) VALUES (?, ?, ?)”

Դուք կիրառում եք INSERT INTO, երբ ցանկանում եք դատաբազայի table-ին նոր record ավելացնել: table-ի անվանումից հետո գրե՛ք table field-երի անվանումները: Վերոնշյալ կոդում մենք ունենք երեք field՝ username, password, և email: Դրանք գրվում են փակագծերի միջև: Space-ից հետո գրեք VALUE-ները: VALUES-ների փակագծերի համար մենք ունենք երեք հարցական նշաններ (?), յուրաքանչյուրը ամեն դաշտի արժեքի համար:

Դուք պետք է այդ արժեքները կապեք պարամետրերի հետ՝

$SQL->bind_param(‘sss’, $uName, $passW, $email);

Ուշադրություն դարձրե՛ք, որ կան երեք s’s տառեր, քանի որ table-ի յուրաքանչյուր  field ունի string արժեքներ:  Մենք ստանում ենք երեք փոփոխական՝ $uName, $passW, $email: Դրանք կարող են գալ HTML form-ից:

Ի վերջո, մենք պետք է իրականացնենք prepared statement-ը՝

$SQL->execute();

Այս ամենի վերաբերյալ scripts folder-ում կգտնեք կոդ, որ կոչվում է  testPrep2.php: Փորձարկե՛ք այն Ձեր սերվերում: Գրե՛ք որոշ արժեքներ textbox-երում և կտեսնեք արտատպված հետևյալ արտահայտությունը՝ “New row inserted”:

Record-ներ թարմացնելը Prepared Statement-ով

Դուք կարող եք update անել record-ը PHP-ում և MySql-ում նույն կերպ ինչ որ նոր record եք կատարում: Ահա մի կոդ, որը թարմացնում է username-ը և գաղտնաբառը՝ հիմնվելով email հասցեի վրա գրված textbox-ում՝

$db_found = new mysqli(DB_SERVER, DB_USER, DB_PASS, $database );

$SQL = $db_found->prepare(“UPDATE members SET username=?, password=? WHERE email=?”);

$SQL->bind_param(‘sss’, $uName, $passW, $email);
$SQL->execute();

Մենք կիրառում ենք prepare ֆունկցիան: Այս անգամ փակագծերի մեջ ունենք հետևյալը՝

(“UPDATE members SET username=?, password=? WHERE email=?”)

SQL keyword-երն են  UPDATE և SET: Մենք թարմացնում ենք անդամների դատաբազայ table-ը: Գրում ենք username և գաղտնաբառ, յուրաքանչյուրն իր հարցական նշանով և placeholder-ով:  WHERE clause-ը օգտագործվում է email հասցեի համար:

Ուշադրություն դարձրե՛ք, որ bind_param ֆունկցիան ունի երեք  s’s տառ, table-ի յուրաքանչյուր string field-ի համար:

$SQL->bind_param(‘sss’, $uName, $passW, $email);

Կրկին, $uName-ը, $passW-ը և $email –ը այն փոփոխականներն են, որոնք մենք ստանում ենք HTML form-ից: Այս արժեքները կփոխարինեն հարցական նշանները prepare ֆունկցիայում:

Ի վերջո, աշխատացնում ենք ամբողջը՝

$SQL->execute();

MySQL record-ը թարմացնելու համար ամբողջական կոդը կարող եք գտնել  testPrep3.php ֆայլում՝ scripts folder-ում:

Record-ներ ջնջելը Prepared Statements-ով

Եթե ցանկանում եք ջնջել record-ներ, ապա կրկին պետք է կապվեք սերվերի և դատաբազայի հետ, այնուհետև պատրաստեք SQL statement՝

$db_found = new mysqli(DB_SERVER, DB_USER, DB_PASS, $database );

$SQL = $db_found->prepare(“DELETE FROM members WHERE email=?”);

Հետո պետք է անեք bind_param՝

$SQL->bind_param(‘s’, $email);

Այնուհետև իրականացրե՛ք այս հայտարարությունը՝

$SQL->execute();

 MySQL record-ը ջնջելու համար ամբողջական կոդը կարող եք գտնել can be testPrep4.php-ում՝ scripts folder-ից:

Հարգելի ընթերցող, խնդրում ենք չմոռանալ like տալ մեր ֆեյսբուքյան էջին, քանի որ նորությունների մեծ մասը առաջինը տեղադրվում է հենց այնտեղ։ Ինչպես նաև հետևեք մեզ այլ սոցիալական ցանցերում և, իհարկե, գրանցվեք մեր բլոգում։

Share.