mysqli sessions funktioner

Tags:    php

Hej,

Jeg prøver at lære at lave php og har fulgt utallige guider, howto's og kørt PHP.net igennem.

Uden at det bliver for kompliceret i begyndelsen har jeg vovet mig ud i at lave funktioner med mysqli (det gamle er jo udgået!).

Sagen er at jeg gerne ville lave en funktion, så jeg kan genbruge den på kryds og tværs. Har læst at bla. funktioner er gode til den slags.

Fold kodeboks ind/udPHP kode 


Rækken admin indeholder kun tal og jeg havde tænkt mig at jeg kunne genbruge ovenstående i min kode til at få adgang til min admin system i bloggen...

Noget ala'

Fold kodeboks ind/udPHP kode 


Kan I hjælpe mig den rigtige vej? Jeg ved ikke om mit indlæg giver mening, men håber at nogen gider hjælpe mig på den rette vej :)

Hilsen Mette Larsen



Indlæg senest redigeret d. 27.12.2014 15:13 af Bruger #21065
3 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Hej Mette,
bare fordi du anvender mysqli er det ikke nogle betingelse af anvende Prepare statement, men gør det hvis du føler for det.
hvis du vil anvende prepare statement på sigt vil jeg overveje at skifte til PDO i stedet for mysqli, kig evt på linket Søren Jacobsen @ 22.12.14 22:46 gav i http://www.udvikleren.dk/forum/46375/mysql--mysqli-prepared-statement/


prepare statement under mysqli: læs denne guide http://www.eksperten.dk/guide/1480

og prøv dette lille eksempel

test data
Fold kodeboks ind/udKode 


php code
Fold kodeboks ind/udKode 





Hej,

Tak for dit svar.

Jeg har fået af vide at PDO kun er hvis man forventer at ens arbejde skal skifte styresystem, altså hvis man fra en linux skal over til M$.

Jeg ved ikke hvad der er bedst praksis, jeg har læst mig til at Prepared Statements er den bedste og mest sikre metode og det er for at undgå at escape mest data .. men jeg vil dog stadig sikre databasen, med de forventede data. Jeg stoler ikke helt på mine brugere :-)

I dit eksempel, hvor finder du $mysqli = MySqlIConnOOP();

Er det fordi du inde i din mysqlconnection.php har et object som forbinder til databasen? I så fald har jeg ikke noget lignende, så hvad skriver jeg så?

Men mange tak for det.



Indlæg senest redigeret d. 27.12.2014 17:26 af Bruger #21065

Jeg har fået af vide at PDO kun er hvis man forventer at ens arbejde skal skifte styresystem, altså hvis man fra en linux skal over til M$.

det er ikke korrekt, PDO udemærker sig ved at man nemt kan skifte database, fra feks mysql til mssql eller oracle sql eller....., endvisre er prepare statement klart forbedret i forhold til mysqli


Jeg stoler ikke helt på mine brugere :-)

fornuftigt


I dit eksempel, hvor finder du $mysqli = MySqlIConnOOP();

det er en function der ligger i min mysqlconnection.php

slet denne linje
Fold kodeboks ind/udKode 


og indsæt denne function istedet
Fold kodeboks ind/udKode 

på sigt vil jeg anbefale dig at ligge functionen ud i en seperat fil du includere


i bund og grund har jeg lagt det du har liggende i databasen.php ud i en function
du kunne godt nøjes med
$mysqli = new mysqli('localhost', 'root', '', 'test');

men jeg vil gerne nemt kunne skift database navnet ud, og jeg vil altid køre UTF8 på min connection
$conn = MySqlIConnOOP(); // laver en connection til test databasen
$conn = MySqlIConnOOP("postnummer"); // laver en connection til postnummer databasen



t