Ik ben een tijdje bezig met een database.
Het lukt wel aardig, allen als ik gegevens wil invoeren via de TextBox gaat het fout. Hij schrijft alleen de waarde van de 1e of 2e TextBox weg. Ik wil ze graag allemaal laten wegschrijven in de database.

Er zit iets fout in het onderste gedeelte (vanaf: if (!empty($_POST))
Het gedeelte daarboven werkt perfect.

Hieronder volgt mijn code:


<?php

$boodschap = null;

$verbinden = mysql_connect("localhost","Tim Hovius","1m2u3z4i5e6k7");

if (!$verbinden) {
$boodschap = "Kan niet verbinden met de database: ";
}

$database = file_get_contents ("database.txt");

mysql_select_db ($database, $verbinden);

$result = mysql_query("SELECT * FROM hallo");

if (!$result) {
$message = 'ERROR:' . mysql_error();
return $message;
}

else {
$i = 0;
echo '<table>';

while ($i < mysql_num_fields($result)) {

echo "\n";
$meta = mysql_fetch_field($result, $i);
echo "<tr>";
echo "\n";
echo "\t";
echo "<td>" . $meta->name . "</td>";
echo "\n";
echo "\t";
echo "<td><input name=$i type=text /></td>";
echo "\n";
echo "</tr> ";
$i = $i + 1;
}

echo "\n";
echo "</table>";
}

if (!empty($_POST)) {

$i = 0;
while ($i < mysql_num_fields($result)) {

$meta = mysql_fetch_field($result, $i);
$sql = "INSERT INTO hallo ($meta->name) VALUES ('$_POST[$i]')";
mysql_query($sql);
$i = $i + 1;
}
}

mysql_close($verbinden);
?>
Waarom werk je met mysql_...._fields()?

<input name=$i type=text /> Als name alleen een getal is zal het nooit werken. En waar zijn de html-quotes?
De HTML code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">;
<html xmlns="http://www.w3.org/1999/xhtml">;
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Gegevens invoeren</title>
<link href="opmaak.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<form method="post" action="">

<HIER STAAT DE PHP CODE VAN HIERBOVEN>

<input name="Submit" type="submit" value="OK" />
</form>
</body>
</html>


Wat bedoel je eigenlijk precies met mysql_...._fields()?
Wat is de bedoeling van die html code?

Hiermee vraag je info op van de velden.
mysql_num_fields($result)
mysql_fetch_field($result, $i)

Kijk eens naar de andere mysql functies op php.net of in de tutorials op www.phptuts.nl.
Je had het toch over de HTML Code? Of bedoel je wat anders?
Maar de vraag is: hoe zet ik nou de informatie in de databasevelden?
Tim Hovius op 24/09/2010 21:27:06

Je had het toch over de HTML Code? Of bedoel je wat anders?
Maar de vraag is: hoe zet ik nou de informatie in de databasevelden?



name=$i Hier is $i een getal en zal dus nooit werken.

Verder klik eens op de link.
Heb ik gedaan. Heb al heel veel van die tututorials gevolgd.
Ik moet de invoer uit het invoerveld halen. Meer niet.
Tim Hovius op 24/09/2010 21:31:25

Ik moet de invoer uit het invoerveld halen.


Nou volg ik je niet meer.
Leg eens uit.

[size=xsmall]Toevoeging op 24/09/2010 21:35:42:[/size]

http://www.phptuts.nl/view/41/7/
Ik roep aan het begin de kolomnamen op van de database. Hier in staat bijvoorbeeld: Naam, Adres, Woonplaats.

Hierin (dus in de rij) moet wat ingevuld worden. Zoals bijvoorbeeld Joop, Amsterdamstraat, Amsterdam.
Maar deze invoer moet in het goede kolom komen.

Mijn vraag is dus hoe je dat doet.
Kleine tip:Haal je wachtwoord en loginnaam uit de originele post!!!!!!!!

Reageren