Database in website

Status
Niet open voor verdere reacties.

Languh

Gebruiker
Lid geworden
2 sep 2007
Berichten
32
Hallo allemaal.

Zoals ook al vermeld in mijn topic hier: http://www.helpmij.nl/forum/showthread.php?p=2590649#post2590649

Wil ik graag een Database bouwen voor mijn DVD collectie en die van mijn broertje.

Dit wil ik graag doen via een website en die wil ik dus via een website kunnen opvragen, en het liefst ook aanpassen

Mij werd verteld dit te kunnen doen via SQL en PHP en ik hoop dat iemand mij hier wat tips over kan geven omdat ik eigenlijk een leek ben wat betreft PHP (alleen HTML kennis) en SQL (alleen via Microsoft Acces gebruikt..)

Alvast bedankt voor jullie adviezen :D
 
het eerste advies is lees een torturial over php.
en vervolgens een over php met mysql.
het tweede advies is houd er rekening mee dat dit je nog aardig veel tijd gaat kosten aangezien je nog niet veel kennis heb.
een gelukje mssql lijkt een heel eind op mysql en hier ga je denk ik zelf wel uitkomen :)

suc6
 
Ik ga eens zoeken naar wat tutorial dan :D

Je weet toevallig niet een goeie aan te raden? of een goede site daarvoor?

In ieder geval nu al bedankt voor je reactie :D
 
Tnx :D

Ik heb zelf nu wat geoefend en heb een tutorial van Websitemaken.be doorgelopen en na wat opstartprobleempjes goed afgerond.

http://www.sebada.nl/test/test.php
http://www.sebada.nl/test/wijzig.php

Ben toen begonnen met bouwen van wat ik zelf ongeveer wil zien, door het verbouwen van de codes die ik heb verkregen via die tutorial. Ook dat is me gelukt:

http://www.sebada.nl/dvd/test.php
http://www.sebada.nl/dvd/wijzig.php

Inmiddels bezig met een toevoeg pagina maar in dat voorbeeld stond connect als:

PHP:
<?php
$con = mysql_connect("xxx.xx.x.xxx","sebadan_xxxx","xxxxxxx");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("sebadan_DVD", $con);

Terwijl ik het liever extern doe met

PHP:
<?php
include "connect.php"; //verbinding maken
$query = "SELECT * FROM `dvd` ";


$sql = mysql_query($query) or die ( mysql_error( ) );
$aantal = mysql_num_rows($sql);

Ik heb een voorgevoel dat ik dit niet letterlijk kan vervangen?
 
Laatst bewerkt:
Jawel hoor, want include() plakt ook gewoon letterlijk het opgegeven script in je pagina als het uitgevoerd wordt dus het netto resultaat is exact hetzelfde als je er een stuk uit kopieert :)
 
Tnx :D

Ik heb nog een klein vraagje:

Ik wil graag voor een aantal dingen die moeten worden ingevuld een beperkte keuze geven. Dus bijvoorbeeld dat wanneer ik een waarde ga toevoegen aan mn table dan moet je een dropdown menu krijgen bij Jaartal, bij Genre1, Genre2 en Genre3

De waarden van deze dropdowns heb ik in aparta tables gezet in mn database.

Hoe kan ik deze in mijn invoerscherm krijgen?

ik heb nu:

PHP:
<html>
<body>

<form action="insert.php" method="post">
Titel: <input type="text" name="titel" /><br>
Jaartal: <input type="text" name="jaar" /><br>
Genre(s): <input type="text" name="genre1" />
<input type="text" name="genre2" />
<input type="text" name="genre3" /><br>
Eigenaar: <input type="text" name="eigenaar" /><br>
<input type="submit" />
</form>

</body>
</html>

En ik wil dus dat er in plaats van input schermpjes, dropdown menu's komen.
jaartallen staan in tabel 'jaar', onder de kolom 'jaar'
genre's (dropdown bij genre1 tm 3 moet uit zelfde bestaan) staan in tabel 'genre' onder de kolom 'genre'

Kan iemand me hier vertellen hoe ik met een php script deze waarden uit die tabellen kan halen en in een dropdown menu kan zetten?

Tnx!
 
Je kunt ze gewoon met een algemene query ophalen (gewoon de hele tabel uitlezen) en met een loop in een select box gooien ->

PHP:
echo '<select name="genre">';
foreach ( $query_resultaten as $row ) {
    echo '<option value="'.$row['id'].'">';
    echo $row['genre'];
    echo '</option>';
}
echo '</select>';
 
Tnx :)

Ik krijg nu wel die dropdown box maar hij blijft leeg :S waar zit mijn foutje?
De opties voor in de dropdown staan de de table 'jaar' en in de kolom 'jaar'
PHP:
<?php
include "connect.php";
$query = "SELECT * FROM `jaar`";
$sql = mysql_query($query) or die(mysql_error() );
echo '<select name="jaar">';
foreach ( $query as $row ) {
    echo '<option value="'.$row['id'].'">';
    echo $row['jaar'];
    echo '</option>';
}
echo '</select>';  
?>


je geeft ook aan

PHP:
 echo '<option value="'.$row['id'].'">';

En ik weet niet echt wat ik daar nu echt mee moet. ik dacht eerst dat ik het moest laten staan (dat "id") maar dat werkte niet, toen veranderde ik het naar "jaar" maar dat werkte ook niet. Misschien kan iemand me uitleggen wat het nu is van deze regel want die snap ik nog niet..
 
Laatst bewerkt:
Je moet bij een option altijd instellen wat de waarde is... ik gebruik daar de identifier voor. Je moet er iig een waarde in zetten die uniek is, zodat je weet welke optie geselecteerd wordt.

Uh, heb je de broncode ergens? Worden er wel opties aangemaakt? Want als het menu leeg is, kan het ook nog zijn dat er geen resultaten opgehaald worden door je query...

EDIT Ik zie al wat er mis gaat, je foreach't over je Query string, niet over de resultaten :) Je moet eerst de resultaten ophalen met mysql_fetch_assoc() en ze allemaal in een array stoppen en daar overheen lopen. (Of ze direct in de <option> loop opvragen, wat je liever hebt)

Als je error_reporting( E_ALL ) ergens bovenaan je pagina zet krijg je dit soort fouten ook te zien :)
 
Laatst bewerkt:
EDIT:

Laat maar :) ik heb hem al! :D

Dit is oplossing geworden:

PHP:
<select name="jaar">

<?php
$query = "SELECT * FROM `jaar`";
$sql = mysql_query($query);
while($record = mysql_fetch_object($sql))
{
echo "<option value =$record->id>".$record->jaar."</option>";
}
?>

</select>
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan