query result vergelijken met post variabele...

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kabbi

kabbi

28/09/2006 13:46:00
Quote Anchor link
Hoi,

Ik heb een vraagje. Ik wil een actie uitvoeren [een categorie toevoegen in een database tabel] Maar ik wil deze actie alleen uitvoeren als deze nog niet als categorie bestaat in de database.

Ik moet dus eerst kijken of deze categorie al bestaat. Wat ik nu doe is een query uitvoeren. Het resultaat is dit:

$row_HC['hc_cat']

Als ik hier een loop over uitvoer laat de browser op het scherm alle resultaten zien.

Hoe kan ik nu de ingevulde categorie: $_POST['h_ow'] vergelijken met de categorieen in de database?

Zoiets als dit: [?]

if ((isset($_POST['h_ow'])) && ($_POST['h_ow'] != $row_HC['hc_cat']))

Of wordt er dan alleen het eerste resultaat van de database query vergeleken? Of moet ik de functie list() of array() gebruiken?

Zou iemand me hier iets over kunnen uitleggen?

groet, Kabbi
 
PHP hulp

PHP hulp

05/11/2024 12:03:08
 
Thomas minke

thomas minke

28/09/2006 13:52:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$query
= mysql_query("SELECT * FROM tablename etc") or die(mysql_error());

$bestaat = mysql_num_rows($query);

if($bestaat == 0)
{

//zet cat erin
}
else
{
//foutje
}
?>
 
Kabbi

kabbi

28/09/2006 14:00:00
Quote Anchor link
Hoi,

Bedankt!
Maar hoe wordt nu de $_POST['h_ow'] ingevoerd in het veld vergeleken dan?

Groet. Kabbi
 
Kabbi

kabbi

28/09/2006 14:03:00
Quote Anchor link
Elke keer als iemand een item invioert met een nieuwe categorie, moet deze categrie [indien dus nog niet bestaat in de categorie tabel] worden toegevoegd in de categorie tabel....
 
Thomas minke

thomas minke

28/09/2006 14:04:00
Quote Anchor link
de naam van de categorie zit in $_POST['h_ow'] ?

in dat geval kan je dit doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$catnaam
= $_POST['h_ow'];

SELECT * FROM categories WHERE catnaam = '$catnaam'
?>


zeg anders even de velden van je database
 
- SanThe -

- SanThe -

28/09/2006 14:04:00
Quote Anchor link
De tabel in de database UNIQUE maken.
 
Kabbi

kabbi

28/09/2006 14:07:00
Quote Anchor link
Hmmm ja klinkt idd wel logisch :)...

Dank je!!
 
Frank -

Frank -

28/09/2006 14:14:00
Quote Anchor link
En dan de gegevens gewoon met een INSERT wegschrijven in de database. Staan de gegevens al in de database, dan zal de query keurig mislukken. Dat kun je constateren door de foutmelding op te vangen met de functie mysql_errno() en te vergelijken met 1062 (of 1064). Dat is de foutcode die je krijgt bij het invoeren van een dubbele waarde in een kolom met UNIQUE.

Uiteraard kan er nog veel meer misgaan met het uitvoeren van een query, dat moet je ook nog opvangen. Maar dat zal niets nieuws onder de zon zijn.
 



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.