Inhoudsopgave
Als er iets is dat een applicatie kan beschadigen, is het wanneer we niet de juiste middelen gebruiken om het sneller en veiliger te maken, er zijn veel manieren om de snelheid en veiligheid van de applicaties te verbeteren, dit kan zijn door betere ontwikkelingspatronen te gebruiken, het toepassen van een grotere beveiliging op de servers, enz.Er is echter een punt waarop we vaak niet stoppen om na te denken en dat is of de tool die taal ons geeft het beste is voor het werk dat we doen. Dit gebeurt veel in PHP Ondanks het feit dat er al jaren een waarschuwing is om de functie niet te gebruiken mysql_connect () om links tot stand te brengen Databases, lijken veel ontwikkelaars de grote fout die ze maken bij het gebruik ervan niet te beseffen.
PHP heeft native ondersteuning voor een groot aantal engines Databases die op de markt bestaan, maar de integratie ervan met MySQL het is bijna een verplicht startpunt voor de meeste gebruikers.
mysql_connect ()Vanaf versie 5.5 van PHP klassieke functie mysql_connect () is in staat verouderd, dat wil zeggen, het is verouderd en het wordt sterk aanbevolen om het niet te gebruiken omdat het niet zal worden opgenomen in toekomstige versies van de taal.
Het alternatief om de verbinding te maken gaat via twee elementen, de eerste is om dezelfde taalstructuur te gebruiken om verbindingen te maken of om de nieuwe bibliotheek te gebruiken om verbinding mee te maken MySQL. Hier komt misschien de eerste vraag, waarom denk je er gewoon aan? MySQL? Welnu, het antwoord is simpel, het is een begin, het is het eenvoudigste en nuttigste dat we in eerste instantie kunnen uitleggen, als we deze basis kennen, kunnen we extrapoleren naar andere motoren en stuurprogramma's.
Het eerste alternatief voor verbinding met Database is om het eigen data-object van de taal te gebruiken, genaamd PHP-gegevensobject of de afkorting ervan BOB. Dit is niets meer dan een grote geschreven extensie in de taal C waarmee we verbindingen tot stand kunnen brengen met verschillende soorten motoren Databases en dat het standaardmethoden heeft die ons de mogelijkheid geven om platformonafhankelijke applicaties te schrijven, dat wil zeggen dat we de syntaxis niet hoeven te veranderen als we de database-engine veranderen.
In eerste instantie zeiden we dat we ons zouden concentreren op MySQL, maar als we een verbinding tot stand brengen via BOB wat we doen, kunnen we toepassen op andere motoren. Hiervoor hoeven we alleen de stuurprogramma's voor genoemde motoren te activeren of op te nemen en ze in het bestand te activeren php.ini van de server.
Om verbinding te maken met een Database we moeten alleen de link tot stand brengen met behulp van de juiste methode ervoor, in BOB de verbinding wordt tot stand gebracht met drie basisparameters, de naam van de databaseserver, de gebruikersnaam en het wachtwoord.
De enige parameter van deze drie die uitleg behoeft, is die van de databaseserver, in het verleden moesten we de . selecteren Database Via een specifieke functie na het tot stand brengen van de verbinding, in dit geval zullen we het in dezelfde string doen, dus onze servernaamstring zou er als volgt uitzien:
mysql: host = hostnaam; dbnaam = dbnaam
We zien dat we in eerste instantie de motor specificeren, in dit geval mysql dan gaan we je met host vertellen wat de server is, hier kan het een zijn IK P of localhost als de server lokaal is, tot slot met dbnaam we geven de naam door van de database waarmee we verbinding willen maken. We gaan in de volgende afbeelding bekijken hoe een code verbinding moet maken met: BOB:
VERGROTEN
In deze eenvoudige query gaan we ervan uit dat we een tabel in onze hebben Database telefoongesprek Auteur die een auteurscode ontvangt en vervolgens de naam, natuurlijk om demonstratief te zijn, het is geen voorbeeld van een goede tabel, we zijn alleen geïnteresseerd in hoe de verbinding werkt van BOB.
In de afbeelding zien we dat we een methode noemen genaamd vraag () van het object gemaakt met de PDO-verbindingsreeks, dan schrijven we onze vraag zonder veel probleem:
VERGROTEN
VERGROTEN
Als we een keer willen overleggen, hebben we al enkele waarden in onze Database het is heel eenvoudig, we hoeven het alleen maar te doen met een vraag KIES, dit zal ons in staat stellen om de records te brengen, in het verleden waren we afhankelijk van functies zoals: mysql_fetch_array () of mysql_fetch_assoc () die eenmaal verbruikt, zorgde ervoor dat we de resultaten niet meer konden beheren.
Met BOB We gaan de gegevens rechtstreeks van het object verkrijgen, dus we zullen het altijd beschikbaar hebben tijdens de uitvoering, laten we in het volgende voorbeeld zien hoe het zou worden gedaan:
Wat MySQL is de meest populaire database-engine om mee te integreren PHP, er is ook een alternatief en dat is MySQLi wat niets meer is dan een objectgeoriënteerde interface. De manier van werken lijkt sterk op die van BOBWat echter verandert, is dat het alleen voor deze populaire database-engine is, dus een cross-platform conversie zou niet mogelijk zijn.
De verbindingsreeks is iets minder complex omdat het de naam van de server in de host en de te gebruiken database verdeelt in twee verschillende parameters, naast de naam en het wachtwoord van de gebruiker, laten we eens kijken hoe het eruit ziet:
$ objConex = nieuwe mysqli (HostName, gebruiker, wachtwoord, DatabaseName);
Laten we in het volgende voorbeeld zien hoe we een verbinding tot stand brengen met MySQLi en hoe we een eenvoudige gegevensinvoeging kunnen uitvoeren:
VERGROTEN
Nu gaan we de gegevens ontvangen en herhalen die we uit een query kunnen halen, hiervoor gaan we dezelfde methode gebruiken vraag () en dan de methode fetch_assoc () om de resultaten te krijgen:
BelangrijkWe moeten in gedachten houden dat als we een systeem hebben gemaakt in een oude versie van PHP en we zullen niet migreren naar nieuwe versies, misschien de verbindingsreeksen wijzigen in Database en querymethoden zijn misschien geen goed idee voor het werk dat het vertegenwoordigt. Als we echter nieuwe applicaties en systemen willen maken, kunnen we het beste beginnen met een solide basis met behulp van deze nieuwe bibliotheken met ondersteuning in toekomstige versies van PHP.
Hiermee ronden we deze tutorial af, we hebben gezien dat de nieuwe alternatieven veel schoner en veiliger zijn, en hun gebruiksgemak maakt ze geschikt voor de huidige tijd.Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een positief punt te geven