Hallo. Ben lekker bezig met php. Ik heb een html formulier waarbij de ingevoerde waarde wordt doorgestuurd naar en php-bestand die deze weer schrijft in een extern html bestand (test.html). het werkt allemaal prima, dankzij ook hulp van dit forum. Echter ik zoek een manier hoe ik de content van test.html weer opnieuw kan inlezen en in een formulier kan importeren en deze dan kan aanpassen en dan tegelijk ook weer opnieuw kan opslaan in test.html.

Ik ben al even bezig, maat ik kan niet echt vinden hie ik dit voor elkaar kan krijgen. Hopelijk dat iemand van jullie hier kennis van heeft. bij voorbaat dank.


Onderstaand het formulier dat in een bestand staat.


<form action="post-method.php" method="post">
 

<textarea rows = "30" cols = "150" name = "mytext">
          
         </textarea>
 
 <input type="submit" name="submit" /> </form> 


Onderstaand het php bestand. de server gegevens heb ik even weggehaald

<?php
$username = "dbtest";
$password = "geheim";
$dbname = "dbs00001111";

$conn = new mysqli($servername, $username, $password, $dbname); // Create connection
if ($conn->connect_error) {     // Check connection
    die("Connection failed: " . $conn->connect_error);
} 

$myfile2= "test.html"; // or .php   
$string2 = file_get_contents($myfile2);

$replace2 = $_REQUEST['mytext'];

$content2 = preg_replace('#(<p[^>]*>).*?(</p>)#', '$1'.$replace2.'$2', $string2);
file_put_contents($myfile2, $content2);

echo $content2;

echo $mytext;

?>
Hallo. even om een misverstand uit de weg te ruimen. Want ik denk dat jullie niet helemaal begrijpen wat mijn doel is. Ik kan een html site bouwen in combinatie met css en beetje javascript. Kennis heb ik inmiddels al genoeg. Daar ben ik al een tijdje mee bezig ook. dat is geen probleem. Ik heb al eerder een site voor een klant met succes op die manier in elkaar gezet. Maar dat was een pilot.

Maar het betrof wel een statische website. Voordat ik nu weer iets ga bouwen voor een klant (alles is nog in opbouw) wil ik wat zaken aanpassen. feit blijft voorlopig dat ik de klant een statische website wil aanleveren, dus geen cms. (het is daarbij niet relevant of men vind dat een klant een cms moet hebben of niet) Ik ga mij namelijk richten op een specifieke soort klant die geen blog nodig heeft en ook verder in principe niets wil aanpassen aan de site, behalve dan wellicht een keer een andere foto of ander emailadres. Maar dat regel ik dan voor hun.

Wat ik nu wi doen is 1 stapje verder gaan. En samen met de klant live te zien hoe zijn site er uit kan komen te zien (dat stukje ontbreekt namelijk vaak bij sitebouwers. wat kan de klant verwachten?). Wat ik nu wil gaan doen is dat ik samen met de klant op mijn site via php dus opties aanbied waaruit ze kunnen kiezen. Dus een type header, type hero (bijv afbeelding met een tekst en button) of een videohero etc etc. de klant kan kan de selectie maken doormiddel van verschillende forms. Aan de hand daarvan worden de rijen opgebouwd en kunnen ze tussendoor een rij ook aanpassen en vervangen voor een ander element. Belangrijk hierbij is dat men dus geen tekst en foto's kan invullen. Er zijn verder ook geen invulformulieren. er wordt puur gebruik gemaakt van checkboxes.
Deze handelswijze lijkt misschien niet standaard. Maar een klant krijgt dan live al te zien hoe de opbouw van de site eruit komt te zien. Als de klant tevreden is ga ik de site afwerken (dus tekst en foto;s toevoegen etc.). Op dit moment heb zo een soort van builder al gemaakt waarbij ik wel of geen database kan gebruiken Bij gebruik van de database gebruik ik 1 tabel en daarin 30 velden en wel rij1, rij2, rij3 etc.. Elk rij wordt gevuld met een waarde. de waarde vertegenwoordigd dan het type element dat ingeladen moet worden.

het cms gedeelte waar dit topic over is gestart, was puur bedoeld om het mij makkelijker te maken. dus zodra de rijen van de pagina in elkaar zijn gezet ik doormiddel van php tekst kan vervangen etc etc.. Maar zover ben ik nog niet. de vraag uit dit topic was puur bedoeld om te kijken wat de mogelijkheden zijn.

Hopelijk dat nu het 1 en ander meer duidelijk is. Ik zal anders in een ander topic even de files die ik heb laten zien. Op die wijze krijgt men meer inzicht wat ik in elkaar heb gezet en hoe ik dit veiliger kan maken.

[size=xsmall]Toevoeging op 08/01/2022 09:39:16:[/size]

Ozzie PHP op 07/01/2022 21:37:10

>> Maar uiteindelijk moet je toch een pagina krijgen met .html extensie?
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.




[size=xsmall]Toevoeging op 08/01/2022 09:40:33:[/size]

Op dit moment ben ik in opbouw en nog niet aan toen om echt klanten te bedienen. Behalve dan een statische website maken. want kennis van html, css en klein beetje javascript heb ik wel. heb als pilot ook al een keer een site gebouwd.

[size=xsmall]Toevoeging op 08/01/2022 09:59:41:[/size]

- Ariën - op 07/01/2022 23:16:34

Laten we even iets recht zetten:

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)

<h1>Welkom</h1>
<p>Welkom op mijn website.</p>


contact.php

<?php
$title = "Welkom";
$introduction = "Welkom op mijn website."
?>
<h1><?php echo $title; ?></h1>
<p><?php echo $introduction; ?></p>


Geeft beiden precies dezelfde uitvoer.





[size=xsmall]Toevoeging op 08/01/2022 10:03:46:[/size]

Bedankt voor je input. Klopt. Beide geven dezelfde uitvoer. maar ik kan een .php bestand zonder database niet bij een eventuele klant installeren (zoals ik al aangaf ben ik nog in opbouw en mijn echte 1e klant gaat nog even duren. Op dit moment ben ik php an het ontdekken en aan het leren). Als ik al zover ben zal de klant een statische website krijgen. Het eventuele cms gedeelte moet puur aan mijn kant draaien en alleen voor eigen gebruik. het cms is ook puur bedoeld om eenvoudig teksten aan te passen. Daar wil ik deze voor uiteidelijk voor gebruiken. Een compleet cms systeem bij de klant installeren zover ben ik nog lang niet en gaat nog wel even duren. daarom wil ik alles stap voor stap doen. Hoop dat alles nu meer duidelijk is.
Wat versta jij onder een database?
In mijn laatste voorbeeld gebruik ik geen database.
Hoi Arien. ja goede vraag. Mysql database bedoel ik. daarin wordt dan de content van een variabele opgeslagen. of zijn er nog andere database vormen?
Wat is er mis met mijn voorbeeld?
Dan kan je in PHP eenvoudig settings aanmaken met strings voor teksten, en booleans voor true/false (ja/nee) switches.

Volgens mij is dat het eerste wat je wilt.

- Ariën - op 08/01/2022 10:05:47

Wat versta jij onder een database?
In mijn laatste voorbeeld gebruik ik geen database.


in je laatste voorbeeld gebruik je inderdaad geen database. Maar de inhoud van de variabele kun je uiteraard op 2 manieren opslaan. in een database of in een bestand. in een bestand was ik eerst ook mee bezig. Maar werd afgeraden. Maar aangezien het cms gedeelte alleen voor mij bedoeld is, wil ik toch een database gebruiken. In dat geval krijgt ik dus file.php bestanden. de uitvoer moet echter uiteindelijk in html komen omdat ik deze via ftp bij een toekomstige klant wil installleren.


[size=xsmall]Toevoeging op 08/01/2022 10:29:45:[/size]

- Ariën - op 08/01/2022 10:26:53

Wat is er mis met mijn voorbeeld?
Dan kan je in PHP eenvoudig settings aanmaken met strings voor teksten, en booleans voor true/false (ja/nee) switches.

Volgens mij is dat het eerste wat je wilt.




MySQL of MariaDB is een veelgebruikte database die 99% van de webhostingbedrijven ondersteunen. Je klant zal daar vast wel bijzitten.
Ja inderdaad. Kans is zeker groot. maar zoals ik al aangaf wil ik op de korte termijn bij de klant eerst zonder database werken. dat komt wel in een later stadium.
Dan gebruik je eerst toch mijn manier uit mijn voorbeeld?
- Ariën - op 08/01/2022 10:26:53

Wat is er mis met mijn voorbeeld?
Dan kan je in PHP eenvoudig settings aanmaken met strings voor teksten, en booleans voor true/false (ja/nee) switches.

Volgens mij is dat het eerste wat je wilt.

dat kan zeker. En is ook zeker een optie. daarmee was ik ook begonnen. Het cms gedeelte is ter spraken gekomen gedurende dit topic. daarom denk ik ook de verwarring bij sommmigen. Maar volgens begrijp jij nu wel wat ik precies wil. Ik zal je wel even apart een berichtje sturen wat ik op dit moment al zo heb (een uitgeklede versie dan) Wellicht dat je dan wat verbeteringen kunt aangeven? Vind php echt een mooie uitdaging en ben er graag mee bezig.
Apart een bericht sturen is niet nodig.
Je kan de code hier ook delen. :-)

Reageren