hoe tekst html bestand importeren in formulier en
Pagina: « vorige 1 2 3 4 volgende »
Toevoeging op 07/01/2022 15:28:06:
Ik ben er zeker van bewust dat een kwaadwillende onzin in de form kan plaatsen. Dat is ook niet de bedoeling. Ik wil er dan ook voor kiezen om de inhoud van de form in de database te schrijven. Vervolgens kan ik dan de content uit de database terughalen en in een file schrijven via de write functie. Ik kan er dan ook voor kiezen dat de write functie pas wordt geladen nadat je met succes bent ingelogd. Is dat een manier om te doen? Zo ja vraag ik mij af of er een manier is via de if statement ook te controleren of er verbinding is gemaakt via de database. Ik heb bijv. onderstaande code, alleen die controleert alleen of deze niet is gelukt, Wat ik kan zou willen is iets van "if connection succesful of zoiets daarin dan de form te plaatsen? Is dat een veilige manier?
Code (php)
1
2
3
2
3
if ($conn->connect_error) { // Check connection
die("Connection failed: " . $conn->connect_error);
}
die("Connection failed: " . $conn->connect_error);
}
Toevoeging op 07/01/2022 15:45:11:
Ik heb trouwens ook al een database in gebruik. Deze database gebruik ik om de keuzes van gekozen elementen op te slaan. daarna wordt de database weer ingeladen en worden de rijen in de website stuk voor stuk opgebouwd waarin uiteindelijk het desbetreffende element verschijnt. Maar wellicht dat ik hierover beter een ander topic kan starten.
Toevoeging op 07/01/2022 16:01:15:
Is de write to file functie dan wel veilig te gebruiken ook wanneer je inhoudt in de file schrijft die eerst uit de database is gehaald? Zijn er dingen waar ik rekening moet houden bij gebruik van de write functie?
Gewijzigd op 07/01/2022 22:45:30 door - Ariën -
Het globale idee is:
Via een formulier sla je gegevens op in je database. Hierbij voer je al wat veiligheidsmaatregelen uit.
Vervolgens haal je bij het tonen van een webpagina de gegevens op uit de database.
De opgehaalde gegevens toon je vervolgens via php in je html code. Versimpeld:
Code (php)
Dit is slechts een voorbeeldje. Het voorbeeldje zelf is verder niet zo interessant. Het gaat om de gedachtegang die erachter zit. Je gaat dus geen bestanden meer aanpassen, maar je haalt gegevens op uit de database en die verwerk je in de bestanden. De bestanden eindigen dan ook niet meer op .html maar op .php
Hopelijk is dit iets waar je iets mee kunt.
Maar uiteindelijk krijg ik dus een index.php pagina waarin dus html staat met php erin.
maar hoe kan ik dan uiteindelijk ervoor zorgen dat ik een html pagina krijg? dus index.html
Je krijgt dus een .php pagina
www.jouwsite.nl/index.php
Dat zou dan de homepage zijn. En bijv. een 'over ons' pagina zou kunnen worden:
www.jouwsite.nl/over-ons.php
En wil je nog een stapje verder dan ga je werken met routes, bijv.
www.jouwsite.nl/home
en
www.jouwsite.nl/over-ons
Maar goed, dat is misschien iets voor later.
anders kunnen ze ook niet worden geindexeerd door de zoekmachines.
Toevoeging op 07/01/2022 21:04:27:
Ik zal even wat toelichten. bedoeling is dat ik de site via csm maak voor de klant op mijn eigen server. Rden hiervoor is zoals ik al eerder had aangegeven. Is er dan een manier om bijv. index.php om te zetten naar index.html (de index.html wil ik dan via ftp bij de hosting van de klant installeren).
anders kunnen ze ook niet worden geindexeerd door de zoekmachines.
2x nee
https://www.phphulp.nl/index.php
Is het maken van websites een hobby voor je? Als je er geld aan verdient, dan mis je nog wat basiskennis denk ik.
geïndexeerd.
En sites die wel .html gebruiken, zoals bijv. nu.nl die maken echt niet per item een nieuwe pagina aan. In veel gevallen gebruiken zij mod-rewrite om de URL te herschrijven.
Over de routes waar Ozzie het over had...
Ikzelf gebruik deze techniek die Thomas daar beschrijft. Het maakt een voordeurtje in index.php aan die alle bezoeken opvangt en naar de juiste scripts toe leidt. Waar je vaak GET gebruikt in de URL (www.site.nl/nieuws.php?id=123) is dat in dit voorbeeld $path. (www.site.nl/nieuws/123). Maar dan mis je nog de slug die de inhoud van de website in de URL beschrijft.
Uiteindelijk weet mijn site bij het oproepen ervan de titel (komt uit de database), en via een Slug-class / -functie en een location-header in PHP, stuur ik de aanroep naar de site opnieuw door naar een ge'slug'te URL met .html erin: www.site.nl/nieuws/123/php-is-een-mooie-programmeertaal.html. Overal op de website gebruik ik dan die class/functie zodat alle verwijzingen naar zo een volledige URL linken.
Het is een flink verhaal, en mogelijk een steile leercurve, maar wel een mooi begin als je een website wilt bouwen.
Ik kan ook een heel verhaal vertellen over template-parsers om HTML/CSS en PHP te scheiden. Maar ik denk dat dit nu wel even genoeg is... ;-)?
Een .html-extentie is echt niet verplicht. Dit topic heeft ook geen .html extentie in de URL staan. Google kan het misschien sneller oppikken, maar volgens mij is daar allang geen sprake meer van. Google heeft dit topic inmiddels ook En sites die wel .html gebruiken, zoals bijv. nu.nl die maken echt niet per item een nieuwe pagina aan. In veel gevallen gebruiken zij mod-rewrite om de URL te herschrijven.
Over de routes waar Ozzie het over had...
Ikzelf gebruik deze techniek die Thomas daar beschrijft. Het maakt een voordeurtje in index.php aan die alle bezoeken opvangt en naar de juiste scripts toe leidt. Waar je vaak GET gebruikt in de URL (www.site.nl/nieuws.php?id=123) is dat in dit voorbeeld $path. (www.site.nl/nieuws/123). Maar dan mis je nog de slug die de inhoud van de website in de URL beschrijft.
Uiteindelijk weet mijn site bij het oproepen ervan de titel (komt uit de database), en via een Slug-class / -functie en een location-header in PHP, stuur ik de aanroep naar de site opnieuw door naar een ge'slug'te URL met .html erin: www.site.nl/nieuws/123/php-is-een-mooie-programmeertaal.html. Overal op de website gebruik ik dan die class/functie zodat alle verwijzingen naar zo een volledige URL linken.
Het is een flink verhaal, en mogelijk een steile leercurve, maar wel een mooi begin als je een website wilt bouwen.
Ik kan ook een heel verhaal vertellen over template-parsers om HTML/CSS en PHP te scheiden. Maar ik denk dat dit nu wel even genoeg is... ;-)?
Gewijzigd op 07/01/2022 21:49:36 door - Ariën -
Is er dan een manier op .php pagina om te zetten naar html. dus stel de php pagina ziet er als volgt uit:
Hierbij bevat $content1 de volgende waarde "hallo"
de html pagina moet dan uiteraard komen<h1>hallo</h1>
Alvast bedankt voor het meedenken.
Gewijzigd op 07/01/2022 22:45:13 door - Ariën -
Maar één ding is belangrijk: Standaard worden PHP-scripts in een .html-bestand nooit door PHP gehaald om de code uit te voeren.
Je kan alles wat een .php-extentie heeft herschrijven met deze code in .htaccess:
Code (php)
1
2
3
2
3
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+?)\.html$ /$1.php [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+?)\.html$ /$1.php [R=301,L]
Dus www.site.nl/contact.php wordt in de URL omgevormd naar www.site.nl/contact.html
Die laatste code met de 301 geeft bij .php bestanden standaard een 301-header mee. Dit houdt in dat Google en zijn vrienden weten dat er wordt doorgestuurd naar de .html variant die leidend is voor indexering in de zoekindex.
Gewijzigd op 07/01/2022 22:00:58 door - Ariën -
Dan moet er toch een databse (waarop moet worden ingelogd) komen die de content van $content uiteindelijk toont? sorry dat ik dit allemaal vraag. Maar ik ben pas 1 week bezig met php en cms.
Als ik nu de pagina.php op de server van de klant installeer waar haalt de php pagina dan de waarde van $content vandaag? hoe werkt dat sowieso met een cms systeem? Er wordt immers niet ingelogd wanneer de website worden geladen!
Code (php)
Edit:
Er zijn nu code-tags geplaatst. Zie ook de opmaakcodes (BBcodes) in de Veelgestelde vragen.
Gewijzigd op 07/01/2022 22:46:49 door - Ariën -
Het inloggen in de database gebeurt gewoon op de achtergrond. Daar heeft de gebruiker niks mee te maken.
Zo wordt bijv. dit vaak gebruikt:
mysqli_connect
Als er er geen database gebruikt wordt, dan moeten die variabelen van te voren ergens gedefinieerd worden.
Gewijzigd op 07/01/2022 22:43:48 door - Ariën -
<h1>hallo</h1>
zoals ik namelijk aangaf wil ik op dit moment nog geen database installeren op de server van de toekomstige klant. In het begin wil ik het even simpel houden. vandaar.
Alvast bedankt voor het meedenken.
Probeer eerst maar te begrijpen hoe de basis in elkaar steekt, zoals GET (data in de URL), POST (data vaak via een formulier), functies, statements, loopjes en array's. Dan vind je vanzelf wel de weg naar databases die je vragen uit dit topic wel zullen beantwoorden. :-)
Nooit teveel hooi op je vork nemen! ;-)
Gewijzigd op 07/01/2022 22:52:33 door - Ariën -
oke bedankt
Gewijzigd op 07/01/2022 22:54:29 door - Ariën -
snap ik daarom wil ik de klant een statische website aanleveren en niet met een database werken. maar de site wil ik zelf via cms in elkaar zetten. dus rijen bouwen met onderdelen. dat maakt het voor mij makkelijk namelijk. Dat laatste ben ik nu mee bezig en gaat goed. Ik wil echter de .html pagina bij de klant installeren.
- Hoe ga je de beheeromgeving beveiligen?
- Hoe ga je de inlogaccountnamen en wachtwoorden (veilig) opslaan?
- Hoe voorkom je dat het systeem of de site niet om zeep geholpen wordt door een foutje van de klant?
- Hoe probeer je te voorkomen dat onbevoegden misbruik kunnen maken?
Mijn advies: Ga eerst lekker doorgroeien. Dan zal je merken dat databases onmisbaar zijn, en hoe de veiligheid in elkaar steekt. Met stevig doorwerken kan je volgende maand wel een simpel CMS'je met database bouwen.
Gewijzigd op 07/01/2022 23:01:46 door - Ariën -
1. Klant logt niet in op de database
2. het opbouwen van de rijen van de pagina gebeurd zonder database (heel onschuldig en niet fraudegevoelig aangezien er geen gegevens worden gevuld via database) en mocht er iets gebeuren dan is het zo verholpen.
3. Ik begrijp wel dat er beveiliging moet worden aangebracht aan mijn kant op de server op het moment dat ik content ga vullen. Maar uiteindelijk krijgt de klant dus een site die veilig is (is namelijk statisch en is dus zonder database)
Toevoeging op 07/01/2022 23:12:34:
Bovendien maak ik nog niets voor een klant. Ik heb alles wel gebouwd, maar ben nu dus bezig hoe ik het de klant kan aanbieden. gaat nog wel even duren ook. en in de tussentijd leer ik bij.
Maar zoals ik verneem is er geen manier om een php pagina die wordt gevuld met content uit de database om te zetten naar een .html pagina.
Klanten zou den infeite nooit mogen inloggen op de database, zoals die van MySQL, MariaDB, SQL-lite, PostgreSQL of wat dan ook. Dat moet het script doen met een connectie-functie. Klanten hebben bij een normaal CMS de toegang via een beheerpaneel. Een gemiddelde klant heeft geen behoefte aan databasetabellen en queries. Enkel aan mooie invulvelden en formulieronderdelen.
In neem aan dat in jouw geval dat jij uiteindelijk via een PHP-configuratiebestand de inhoud van de site wilt aanpassen. Dat is in PHP geen enkel probleem door variabelen aan te maken in een centraal bestand, en die op te roepen op de pagina's die je maar gebruikt.
En ja, je kan het omzetten naar .html. Maar wat wil je ermee bereiken tegenover dat de uitvoer praktisch hetzelfde is als in .php?
Probeer beiden maar:
contact.html (in het kort)
contact.php
Code (php)
Geeft beiden precies dezelfde uitvoer.
Gewijzigd op 08/01/2022 10:41:53 door - Ariën -
Dit is helemaal niet relevant. Voor je eigen bestwil. Als je echt sites voor klanten wil gaan maken, heb je een bepaald (basis)begrip nodig van html, css, php en databases. Ik zou eerst zorgen dat je je die basis leert toeëigenen. Je probeert nu als ik je goed begrijp voor klanten een auto in elkaar te zetten, terwijl je nog nooit aan een auto hebt gesleuteld, althans niet op de juiste manier. Programmeren, en alles wat daarbij komt kijken, is een vak. Wat gebeurt er als iemand via een formulier de website van jouw klant wist? Of misschien wel vervangt door porno? Zal je klant leuk vinden (maar diens vrouw wellicht wat minder). Een beetje luchtigheid tussendoor ;-) Maar zonder gekheid, aan de vragen die je stelt leid ik (en ook Ariën) af dat je basiskennis mist. Daar zou ik eerst eens aan gaan werken. Je zult ons er later dankbaar voor zijn.
Toevoeging op 08/01/2022 01:01:29:
PS
In het 2e codeblok van Ariën ontbreekt ; aan het eind van de regel.
Moet zijn:
$introduction = "Welkom op mijn website.";
Gewijzigd op 08/01/2022 01:01:57 door Ozzie PHP
Pagina: « vorige 1 2 3 4 volgende »