als naam al in msql staat niet toevoegen

Status
Niet open voor verdere reacties.

lefty999

Gebruiker
Lid geworden
5 jul 2002
Berichten
913
Dag beste

ik heb een site waar er random foto's geladen worden.
Hierbij wil ik dat hij bij de gelade foto gaat zien als de naam van de foto al in de msql rij staat of niet als hij er niet instaat hij hem invoegd en als hij er al instaat niks doet maar hoe krijg ik dit klaar ???


ik heb volgende code nu gemaakt maar hij doet het niet zoals gewild

$check = mysql_query("SELECT * FROM vote WHERE name='$image' ");
if ($check){
$voeruit = mysql_query("INSERT INTO vote (name) VALUES('$image')");
echo "$voeruit";
}
else
{
echo "doe niks";
}

de waarde van $image word meegegeven.
 
Laatst bewerkt:
Je voert een select-query uit en controleert of deze uitgevoerd is (if $check).

Beter zou zoiets zijn:
PHP:
//Voer query uit.
$result = mysql_query("...");
if (mysql_num_rows($result) > 0) {
//Doe hier de insert query.
mysql_query("...");
} else {
echo "Image bestaat al";
}

Ik heb niet alle code voor je ingevuld, dat mag je lekker zelf doen ;)

Op deze wijze zou ik het waarschijnlijk geïmplementeerd hebben.
 
Je voert een select-query uit en controleert of deze uitgevoerd is (if $check).

Beter zou zoiets zijn:
PHP:
//Voer query uit.
$result = mysql_query("...");
if (mysql_num_rows($result) > 0) {
//Doe hier de insert query.
mysql_query("...");
} else {
echo "Image bestaat al";
}

Ik heb niet alle code voor je ingevuld, dat mag je lekker zelf doen ;)

Op deze wijze zou ik het waarschijnlijk geïmplementeerd hebben.

Dat is alleen niet helemaal de bedoeling. Wat gebeurt er als er tussen de select-query en de insert-query een image in de database wordt gezet met die naam? Kleine kans, maar wel mogelijk.
Zulke dingen hoef je niet in PHP te doen. Je kunt een bepaald veld in je tabel UNIQUE maken, MySQL zal dan een foutmelding geven als het record al bestaat.

Insert uitvoeren -> fout afvangen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan