PHP toevoegen fout

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jorik

Jorik

28/08/2004 19:00:00
Quote Anchor link
Heb al weer wat :P..

Dit keer een script om een muziekstuk toe te voegen.
Dit script moet in de MySQL tabel 'muziek' een nummer, de artiest, en evt. arr toevoegen.
Tabellen in query 'muziek':
id,nummer,artiest,arr.

script (post.php):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
include("safe.php");
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<? ob_start();
include "connect.php";
include "ubb.php";
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$pagenaam
= "Muziekstuk toevoegen";
include("../header.php");
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<? if ($_POST['submit']) {
if ($_POST['nummer']!="" AND $_POST['artiest']!="") {
$insert = "INSERT INTO muziek (nummer,artiest,arr) VALUES ('','".$_POST[nummer]."','".$_POST[artiest]."','".$_POST[arr]."')";
mysql_query($insert) or die(mysql_error());
echo "<script>location.href='index.php'</script>"; }
else { echo "Error";}}

else { ?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?
$sql
= "SELECT * FROM muziek ORDER BY nummer ASC";
$resultaat = mysql_query($sql) or die ("query mislukt");
while ($rij = mysql_fetch_object($resultaat)){
$nummer = htmlspecialchars($rij->nummer);
$artiest = htmlspecialchars($rij->artiest);
$arr = htmlspecialchars($rij->arr);
set_smilies($bericht);
}
?>

<div align="center">
<table class='gbook'>
<tr>
<td class='gbook2'><a name='voegtoe'></a>Muziekstuk toevoegen</td>
</tr>
<tr>
<td>
<form method="post" action="post.php" name="gastenboek">
<table>
<tr><td width="100"><small>Nummer:</small></td><td width="400"><input type="text" name="nummer" size="35"></td></tr>
<tr><td valign="top"><small>Artiest:</small></td><td width="400"><input type="text" name="artiest" size="35"></td></tr>
<tr><td valign="top"><small>Arr:</small></td><td width="400"><input type="text" name="arr" size="35"> <small><small>(leeglaten indien geen)</small></small></td></tr>
<tr><td></td><td><input type="submit" name="submit" value="Toevoegen"></td></tr>
</form>
</table>
</td>
</tr>
</table>
</div>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? } ?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
include("../footer.php");
?>


ik krijg bij het posten deze error:
Column count doesn't match value count at row 1

HELP :S...
Gewijzigd op 28/08/2004 19:01:00 door Jorik
 
PHP hulp

PHP hulp

15/01/2025 11:29:32
 
Dutchcamel

dutchcamel

28/08/2004 19:03:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$insert
= "INSERT INTO muziek (nummer,artiest,arr) VALUES ('','".$_POST[nummer]."','".$_POST[artiest]."','".$_POST[arr]."')";
?>


Maak daar eens van

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$insert
= "INSERT INTO muziek (nummer,artiest,arr) VALUES ('".$_POST[nummer]."','".$_POST[artiest]."','".$_POST[arr]."')";
?>
 
Dutchcamel

dutchcamel

28/08/2004 19:04:00
Quote Anchor link
Je geeft namelijk eerst aan dat je 3 'vakjes' in wil vullen (nummer, artiest en arr) en daarna geef je 4 waardes op, dat past niet :)

Daarom is bij de regel die zou moeten werken die ik net gaf het stukje:

''',

weggehaald, zodat je ook maar 3 waardes opgeeft.

Verder is een query een opdracht voor je database en 'muziek' is een tabel :)
Gewijzigd op 28/08/2004 19:07:00 door dutchcamel
 
Jorik

Jorik

28/08/2004 19:08:00
Quote Anchor link
Had zelf dus die overbodige '", nooit gezien...

Bedankt, het werkt nl. nu wel :P..

I like this site :D
 
Dutchcamel

dutchcamel

28/08/2004 19:09:00
Quote Anchor link
Sorry voor derde post op rij maar past niet echt bij het vorige bericht.

Je kun het stukje anders ook nog vervangen voor:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$insert
= "INSERT INTO muziek VALUES (NULL,'".$_POST[nummer]."','".$_POST[artiest]."','".$_POST[arr]."')";
?>


Dan geef je aan door "(nummer,artiest,arr)" weg te laten dat je alle 'vakjes' in wil vullen (in dit geval dus alle 4). En geef je voor het eerste 'vakje' NULL op, waardoor die dus automatisch ingevuld wordt. Is een iets kortere oplossing :)
 
Jorik

Jorik

28/08/2004 19:10:00
Quote Anchor link
Leuk om te weten dat het ook zo kan.. wist ik nog niet..
thanx...
 
Mitch X

Mitch X

28/08/2004 19:15:00
Quote Anchor link
Nu nog die letterindex van de $_POST vars tussen de quotes en je kan verder :)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$_POST
['waarde'];
?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.