Ik ben een newbie met sql en php. Ik gebruik nu sql maestro maar alles wat ik maak schrijft hij weg als sql bestand en nu weet ik niet wat ik hiermee aanmoet.
volgens mijn boeken (Basiscursus PHP 5 van Peter Kassenaar & Leer jezelf makkelijk PHP van Arjan Burger) moet ik in het php script verwijzen naar een db bestand maar het is hier een sql bestand.

Verder zijn het alweer wat verouderde boeken dus ik weet niet of ik nog het commando sqlite_open moet gebruiken of sqllite3_open

kan iemand mij helpen of een link geven waar ik (liefst in het Nederlands) kan uitpluizen wat ik nu moet doen om in ieder geval te kunnen werken aan een fatsoenlijk gastenboek en zo???

Bob
Of heeft iemand voor mij een bestand wat ik op mijn server kan zetten om mee te stoeien????

Bob
Twee keer achter elkaar posten heet bumpen en dat mag hier niet
Gelijk op mijn donder krijgen als nieuwe user?
ik ben mij er niet van bewust dat ik twee posts heb geplaatst maar dat zal dan wel. Weet ook iemand iets te vertellen over mijn vraag????
bob schreef op 23.11.2008 15:48
Gelijk op mijn donder krijgen als nieuwe user?
Waarom niet, je zou als nieuwe gebruiker de regels moeten gelezen hebben en deze zouden nog vers in je achterhoofd moeten zitten.
bob schreef op 23.11.2008 15:48

ik ben mij er niet van bewust dat ik twee posts heb geplaatst maar dat zal dan wel.
Als ik nog goed kan tellen, zie ik echt 2 berichten van jou net onder elkaar staan hier. (je hebt een edit knopje voor als je nog iets wil aanbrengen aan je laatste post)
bob schreef op 23.11.2008 15:48
Weet ook iemand iets te vertellen over mijn vraag????
Ja, kan je hem iets duidelijker specifiëren? Ik snap helemaal niet wat je bedoeld..
Aah, je gebruikt SQLite zie ik. SQLite is een database die als het ware in PHP gebakken zit. Meestal maak je verbinding met een service, zoals MySQL, via *_connect() en gebruik je *_query() om met die service te praten. Om te praten met die service gebruik je dan SQL als taal.

Bij SQLite verbindt je niet, maar verwijs je naar het bestand waar alle data in zit. In dit bestand zit dus geen SQL, maar gegevens. Nu is de vraag: sla je vanuit SQL Maestro zo'n databestand op (en welke indeling gebruik je dan? SQLite 2 of 3?) of sla je SQL commando's op.

SQL commando's zijn eigenlijk gewoon puur tekst, en kan je openen met bijvoorbeeld kladblok en dan zie je de commando's, en vaak wordt de extentie '.sql' gebruikt. De SQLite databestanden kan je niet openen met kladblok, en doe je dat wel dan kan je een boel vreemde tekens verwachten :) Ook hebben ze geen 'standaard' extensie.

Wat heb je al, en waar gaat het nu mis? Dan kunnen we je daarmee helpen :)
Maar je wilt dus wel dat hij verwijst naar een bestand ipv connectie maakt met een "online" database?

Je hebt verschillende programma's etc voor databases te maken,
Ik raad je aan gewoon sql te leren en dat hoeft niet perse op hoog niveau.

wat ik gebruik.
1.Dreamweaver CS3 dit programma higlight de code en je kan ook in ontwerp bewerken. (behalve php kan je niet in ontwerp bewerken.

2.Usbwebserver
Dit is een server die op localhost draait, het vertaal je php en zet dit om in html. zo kan je je php testen.


Het voordeel van usbwebserver is dat er phpmyadmin bij in zit.
Hier kun je gemakkelijk databases aanmaken, door sql queries in te voeren maar ook handmatig. (klikken dus).
het is zeer gebruiksvriendelijk.

Als je een database hebt gemaakt maak je in kladblok of dreamweaver etc. een php bestand waar je connectie maakt en de benogdigde dingen inzet die je wil uitvoeren.

In jouw geval maak je dus een database gastenboek aan.

dan maak je bijvoorbeeld een tabel dat berichten heet met daarin een veld bericht met Not_nul varchar 1000 ofzoiets. (dit is de max tekens per bericht).

daarna maak je in php een form (boven de <?php ?>)

<form action="verwerk.php" method="post" />
<input type="text" name="bericht" />
<input type="submit" value="Verstuur bericht" />
</form>
en daarna devolgende code:

<?php
// hier maakt hij de connectie (bij usbwebserver phpmyadmin zijn dit de
//standaard login gegevens. ook als je een database aanmaakt
//connecten met de database
mysql_connect("localhost", "root", "usbw") or die('Kon geen connectie maken met phpmyadmin'. mysql_error());
//database selecteren
mysql_select_db("gastenboek") or die('Kon geen db selecteren'.mysql_error());

//dan maak je een query gebruik de variabele $bericht uit je form
//$bericht = $_POST["bericht"];

mysql_query("INSERT INTO `berichten`
(`bericht` ) VALUES('".$bericht."' ) ")
or die('Waarschijnlijk een fout in de query, als u gebruiker bent kunt u dit bericht negeren en contact openemen met de Webmaster'.mysql_error());


?>

Dit sla je op als verwerk.php in de root van usbwebserver.
je start usbwebserver
en gaat in je browser naar http://localhost/verwerk.php


Ik hoop dat je zo wat verder komt je moet nu nog een pagina aanmaken die de berichten op het scherm zet.
dit is dus 1 van de manieren maar hoe je connect met een echte database is wel hetzelfde alleen zullen de wachtwoorden etc wijzigen.
@ phpnoobie: Niet echt antwoord op zijn vraag hè...


@ bob: Probeer er eerst achter te komen of het sqlite 2 of sqlite 3 is.
Als het sqlite 2 is, dan moet je kijken of je host wel sqlite 2 ondersteund ([php]phpinfo()[/php].
Voor sqlite 3 geldt het zelfde. Je host moet het wel ondersteunen.

Als je weet welke sqlite versie het is, ga je in de docs van php kijken naar [php]sqlite[/php] of [php]sqlite3[/php]

Het komt erop neer dat je eerst het bestand moet openen met [php]sqlite_open()[/php] of [php]SQLite3::__construct[/php]

Als je dat gedaan hebt, probeer dan een simpele query:
[php]sqlite_query()[/php] of SQLite3::query

@Arian
Ik vond zijn vraag zo onduidelijk geformuleerd dat ik dacht dat hij dit bedoelde. Ik neem aan dat , dat dus niet het geval is.
Ik dacht dat hij niks wist van mysql en php en dat hij daarom maar een meastro had. Dus ik legde hem het normale php mysql even uit.

Reageren