sql >> Database >  >> RDS >> Mysql

Handtekening opslaan in MySQL

Relationele databasebeheersystemen (RDBMS) is een service of software die wordt gebruikt om databases te maken en te beheren op basis van een relationeel modelschema. Het kan worden gedefinieerd als een open-source relationele database beheersysteem (RDBMS) met een client-servermodel .

Opmerking: Om u te helpen uw begrip van MySQL te verbeteren, zijn enkele van de belangrijkste termen die in het artikel worden gebruikt, gedefinieerd. Hieronder vindt u een levendige uitleg van de belangrijkste termen waarmee u vertrouwd moet raken:

  • Een database; Dit is een verzameling van georganiseerde gegevens. Het is een plek waar gegevens worden georganiseerd en opgeslagen. De term relationeel betekent dat de opgeslagen gegevens zijn georganiseerd in tabellen die op verschillende manieren met elkaar in verband staan. Als de software het relationele datamodel niet ondersteunt, wordt dit een Database Management Systeem (DBMS) genoemd. .
  • Open source: Het kan in eenvoudige bewoordingen worden genoemd als iets gratis, en u kunt niet betalen of in rekening worden gebracht om het te verkrijgen. Ook op het gebied van software betekent open-source dat de huidige gebruiker de vrijheid heeft om het zonder beperkingen te gebruiken en aan te passen. In de meeste gevallen is open-source software eenvoudig te installeren omdat er geen ingewikkelde installatie-instructies in staan. Bovendien hebben ontwikkelaars die open-sourcebroncode gebruiken ruimte om de originele code aan te passen aan hun gebruik en aan hun behoeften en voorkeuren.
  • Clientserver-model: Computers die RDBMS-software kunnen installeren en uitvoeren, worden clients genoemd. Ze hebben toegang tot gegevens door verbinding te maken met de RDBMS-server. Bij dit type computer moet een centrale server gegevens distribueren naar verschillende werkstations die op elkaar zijn aangesloten.

MySQL is een van de meest populaire relationele databasebeheersystemen (RDBMS) naast MariaDB. Het wordt gebruikt voor gegevensopslag door webapplicaties zoals Twitter, YouTube, Facebook, Google en Yahoo. MySQL is compatibel met Linux, macOS, Microsoft Windows en Ubuntu.

Opmerking: MySQL is geschreven in de programmeertalen C en C++.

Hoe MySQL werkt

Een of een paar computers (clients) maken verbinding met een server via hetzelfde netwerk. Elke client doet een verzoek via de grafische gebruikersinterface (GUI) op hun monitoren, en de server geeft vervolgens de gewenste uitvoer alleen als beide partijen elkaar begrijpen. Hieronder staan ​​de belangrijkste processen die in de Mysql-omgeving worden uitgevoerd:

  1. Databases maken die worden gebruikt om gegevens op te slaan en te beheren. Het definieert ook de relatie van elke tabel in de database.
  2. Klanten kunnen verzoeken doen door bepaalde SQL-instructies op de MySQL-server te typen.
  3. De servertoepassing reageert dan door de gevraagde gegevens aan de kant van de klant te verstrekken.

Handtekeningen opslaan met MySQL

Deze zelfstudie van dit artikel is gebaseerd op een handtekeningblok. Een signature-pad is een jQuery-plug-in die helpt bij het maken van een HTML5-canvas-based pad. Het slaat vervolgens de getekende handtekening op in JSON voor toekomstige regeneratie.

Snelle start

1. Neem jquery.signaturepad.css, flashcanvas.js, jquery.js, jquery.signaturepad.js, json2.js op in het HTML-bestand dat u heeft, zoals in het gegeven voorbeeld.

2. Maak de HTML door het gegeven voorbeeld te volgen (klik op “het voorbeeld”)

3. (‘.sigPad’).signaturePad();

4. Onthoud dat de meeste elementen kunnen worden geconfigureerd.

De jQuery-plug-in voor handtekeningpad verandert een HTML-formulier in een handtekeningpad met twee modi:DrawIt en TypeIt. In TypeIt-modus wordt de handtekening van de gebruiker automatisch gegenereerd als HTML-tekst. Het is opgemaakt met @font-face, vanuit het invoerveld waar hun naam wordt ingetypt. In DrawIt-modus kan men hun handtekening op het canvas-element tekenen.

De handtekening die is getekend, wordt vervolgens uitgeschreven naar een verborgen invoerveld als een JSON-array met behulp van JSON.stringify(). Aangezien de handtekening wordt opgeslagen als JSON, kan deze als onderdeel van het formulier worden verzonden en in het bestand worden bewaard. De handtekening kan vervolgens opnieuw worden gegenereerd in het canvaselement dat moet worden weergegeven met behulp van de JSON-array. Het handtekeningblok werkt met een muis of een aanraakapparaat.

U kunt meer over het handtekeningblok vinden door op Documentatie handtekeningblok te klikken.

De handtekening ophalen

Het ondertekeningspad verzendt de handtekening en de rest van het formulier in een verborgen invoerveld:

De eenvoudigste manier om de handtekening te krijgen met PHP is met de $_POST superglobal.

In PHP is de beste manier om informatie uit een formulier te halen het gebruik van de filterfuncties van PHP (je kunt meer over de filterfuncties vinden door naar de meegeleverde link te gaan). Ze bieden een veiligere manier om gebruikersinvoer te verzamelen en ongewenste informatie te verwijderen. Het gebruik van de $_POST-array is echter niet veilig en kan verder leiden tot validatiefouten. Als klap op de vuurpijl leidt PHP niet tot fouten als u probeert toegang te krijgen tot de gebruikersinvoer zonder het formulier in te dienen.

Van lib/save-signature.php:We kunnen filter FILTER_UNSAFE_RAW gebruiken voor de specifieke handtekening omdat we alle informatie in de handtekening willen behouden. Om specifieker te zijn, kunt u FILTER_VALIDATE_REGEX gebruiken.

De handtekening valideren

De zeer waarschijnlijke manier om de handtekening te valideren, is door deze door json_decode() te laten lopen en te wachten om vast te stellen of deze kan worden gedecodeerd.

Van lib/save-signature.php:

Opmerking: U moet de naam valideren om er zeker van te zijn dat de juiste naam is ingevoerd.

De database instellen

U hebt enkele gegevens over de database nodig om de handtekening op te slaan. Dat is de naam van de ondertekenaar en de handtekening. Het is verstandig om behoorlijk wat informatie op de handtekening te zetten; op zijn minst een hash van de handtekening, het IP-adres van de ondertekenaar en het tijdstip waarop de handtekening is geschreven. Dit is voornamelijk voor juridische doeleinden.

Opslaan in de database

Nadat alles is gevalideerd, kunnen we de handtekening nu opslaan in de database. De eenvoudigste manier is om de JSON-representatie van de handtekening in de database op te slaan. Als u een bestand wilt maken dat een foto bevat, klikt u op Bekijk hoe u de handtekening naar een afbeelding kunt converteren.

De beste methode is om de PDO van PHP te gebruiken (klik erop om er meer over te weten) om verbinding te maken met databases. Door te kiezen voor PDO:prepare(), helpt dit u enige bescherming te krijgen tegen SQL-injectieaanvallen.

Van lib/save-signature.php:

De handtekening opnieuw genereren

Een van de eenvoudigste methoden om de handtekening opnieuw te genereren, is door PHP te gebruiken om JavaScript op een van uw pagina's te schrijven. Wanneer de pagina wordt geladen, bevat deze een native JavaScript-variabele met de volledige handtekeninginformatie en kan Signature Pad worden gebruikt om de afbeelding opnieuw te genereren.

Desalniettemin is MySQL niet het enige(R)DBMS op de markt, maar het is zeker populair. Het krijgt de hoge voorkeur vanwege de volgende redenen:

  1. Flexibiliteit en gebruiksgemak: Het geeft je de ruimte om de broncode aan te passen en aan je verwachtingen te voldoen, en het beste is dat dit niveau van vrijheid gratis is. Dit omvat ook de optie om te upgraden naar de geavanceerde commerciële versie. Bovendien is het installatieproces relatief eenvoudig en duurt het niet meer dan dertig (30) minuten.
  2. Het biedt uitstekende prestaties: MySQL wordt ondersteund door veel clusterservers, wat in wezen betekent dat MySQL u optimale snelheid biedt, of u nu grote hoeveelheden grote e-commercegegevens opslaat of zware business intelligence-taken uitvoert.
  3. Het is industriestandaard: In de loop der jaren hebben industrieën MySQL gebruikt, wat in wezen veel bronnen biedt voor bekwame ontwikkelaars.
  4. Het is veilig: Bij het kiezen van de juiste RDBMS-software moeten uw gegevens uw eerste zorg zijn. MySQL heeft een Access Privilege-systeem en gebruikersaccountbeheer waardoor de beveiligingslat hoog ligt. Het biedt ook hostgebaseerde verificatie en wachtwoordcodering.
  5. On-demand schaalbaarheid: MySQL biedt ruimte voor het opzetten van diep ingebedde apps met een minimale footprint, inclusief die in enorme magazijnen die terabytes aan gegevens bevatten.
  6. Uitgebreide transactieondersteuning: MySQL heeft de eersteklas robuuste ingenieurs op de markt. Het is de beste oplossing voor volledige gegevensintegriteit. Het heeft functies zoals ondersteuning voor transacties met meerdere versies, ondersteuning voor langetermijntransacties en onbeperkte vergrendeling op rijniveau.
  7. 24 uur per dag uptime: MySQL biedt 24/7 uptime en een breed scala aan oplossingen met hoge beschikbaarheid, zoals master/slave-replicatieconfiguraties.

Conclusie

Samengevat geeft dit artikel je een uitgebreide uitleg van MySQL. Het biedt verder links waarmee u meer informatie over het genoemde onderwerp kunt krijgen, en u hoeft alleen maar op de aangeboden links te klikken. Daarnaast biedt dit artikel u een makkelijke procedure waarmee u een handtekening kunt opslaan in MySQL.

Dit artikel bevat verder een link die uitlegt hoe men de handtekening naar een afbeelding kan converteren. Het bevat subkoppen die u helpen bij het begrijpen van de stapsgewijze stroom van gebeurtenissen. Bovendien kun je een korte uitleg vinden over hoe MySQL werkt, evenals de redenen waarom MySQL een goede keuze is voor het geval je erover denkt om het te schrappen (bedoelde woordspeling).


  1. Is er zoiets als een zip()-functie in PostgreSQL die twee arrays combineert?

  2. Oracle-query om kolomnamen op te halen

  3. Dynamische SQL - EXEC(@SQL) versus EXEC SP_EXECUTESQL(@SQL)

  4. MySQL Bestel op een nummer, Nulls duren