MYSQL Duplicate entry negeren?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Developer .NET

Functie omschrijving .NET developer gezocht! Wij zoek op zoek naar een .NET Developer die zich niet uit het veld laat slaan voor een software bedrijf in de regio Veenendaal. Je gaat in deze functie aan de slag met het door ontwikkelen van bestaande producten en het ontwikkelen van nieuwe producten. Dit bedrijf ontwikkeld SaaS applicaties die zowel intern als extern gebruikt worden. Verder bestaat je functie uit: Het ontwikkelen en bouwen van webapplicatie, mobiele applicaties en websites vallen onder jouw verantwoordelijkheden; Werken met onder andere .NET, C#, HTML/CSS, Javascript en MSSQL/Oracle Databases; Hierin werk je samen met andere developers en

Bekijk vacature »

React developer Inhouse cloudplatform

Functie De functie: Als front-end developer kom je te werken naast 2 andere front-end/React developers, waaronder één senior. Een hele mooie kans dus om in korte tijd veel nieuwe kennis en ervaring op te doen. Ze hebben momenteel veel werk hierin en daarom willen ze het team graag uitbreiden. Het is van belang dat je, zeker gezien het vele thuiswerken, in ieder geval al een aantal projecten hebt gedaan in React. Taken waar je aan kunt denken zijn het ontwikkelen van client-applicaties o.b.v. HTML5, React en andere open standaarden. Ook ben je nauw betrokken bij het implementeren van designs o.b.v.

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Voor een opdrachtgever in omgeving Delft zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

No-Code Betty Blocks ontwikkelaar

Bedrijfsomschrijving Wil jij de bedrijfsprocessen van klanten revolutionair digitaliseren en optimaliseren zonder beperkt te worden door programmeertalen? Kom werken bij een snelgroeiende en professionele organisatie met een gezonde dosis humor en veel vrijheid om jezelf te ontwikkelen. Als No-Code Betty Blocks ontwikkelaar werk je vanuit ons kantoor in het hart van Nederland, je thuiswerkplek of op locatie bij de klant. We faciliteren de juiste trainingen en ondersteuning zodat je een echte Betty Blocks expert wordt. Naast het werk zijn er bij ons bijzondere events, zoals een jaarlijkse zeildag, een zomerse barbecue en een knus kerstdiner om de grillige maanden door

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe stap? Voor een softwarebedrijf in regio Oosterhout zijn wij op zoek naar een back-end developer met kennis of ervaring met C# en SQL. Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

.NET developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van IT Operations Manager! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in een ontwikkelteam met 7 .NET developers. In ons team werken er drie senior .NET developer, twee medior .NET developers en twee junior .NET developers. Er is dan ook genoeg senioriteit in ons team om jou te kunnen bieden wat jij nodig hebt! Wij werken in scrum en hebben drie wekelijkste sprints. Daarnaast doen wij minimaal vier keer per jaar een release. Ons platform is ontzettend complex en groot. Het is dan ook in het begin belangrijk dat jij de processen gaat begrijpen. Jij krijgt dan ook een cursus om beter te begrijpen

Bekijk vacature »

Medior PHP developer

Functie Samen met je development team werk je Agile Scrum en met jullie gezamenlijke kennis en ervaring bepalen jullie samen de beste keuze voor techniek en architectuur. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en denkniveau • Je hebt goede kennis en ervaring met PHP • Je bent niet bang voor complexe projecten • Je werkt graag zelfstandig aan applicaties • Je bent altijd nieuwsgierig naar nieuwe

Bekijk vacature »

Software Ontwikkelaar

Functieomschrijving In deze uitdagende functie als Software Developer ga je de volgende taken uitvoeren: Maatwerk back-end software programmeren; API koppelingen bouwen; Software optimaliseren voor klanten; Bouwen maatwerk applicaties; Werken met Microsoft stack zoals C#, .NET (Core) en Entity framework; Bedrijfsprofiel Je gaat werken bij een klein softwareontwikkelingsbureau, die maatwerk software bouwt voor klanten door heel Nederland. Dit doen zij al meer dan 20 jaar. Het is van oorsprong een familiebedrijf, opgezet door de eigenaar, die er nog steeds werkt. Het team bestaat vooral uit back-end developers en één systeembeheerder. Je krijgt veel kans om jezelf te ontwikkelen en krijgt tevens

Bekijk vacature »

Medior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Medior Front-end Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Senior Front-end developer Consultancy

Functie Als front-end developer ga je aan de slag voor verschillende klanten, waarbij veel rekening wordt gehouden met waar je woont (dit is altijd binnen het uur), en word er gezocht naar een organisatie die past bij jou. Zowel qua persoonlijke ambities als de technische aansluiting. De opdrachten duren gemiddeld 1 à 2 jaar maar dit hangt ook af van je wensen. Je werkt in een teamverband voor een klant en zult nauw samenwerken met zowel eigen collega’s als die bij de klant werkzaam zijn. Ze zijn op zoek naar een technische front-end developer die ruime ervaring heeft in één

Bekijk vacature »

Sportieve Junior C#.NET developer gezocht!

Bedrijfsomschrijving Wil jij werken aan webapplicaties bij de marktleider binnen de branche? Voor een klant in de buurt van Oosterhout ben ik op zoek naar een Fullstack .NET developer. Dit bedrijf bestaat bijna 10 jaar en is inmiddels uitgegroeid tot marktleider in Nederland en heeft tevens kantoren in meerdere landen in Europa. Dit bedrijf bouwt webapplicaties waarbij internationaal enkele honderdduizenden deelnemers, soms tegelijk, een beroep doen op de realtime data uit deze applicaties. Dit brengt erg veel technische uitdaging met zich mee. Ze ontwikkelen nieuwe applicaties maar ook bestaande applicaties worden uitgebreid en verbeterd. Hier kan jij een onderdeel van

Bekijk vacature »
Rob Tel

rob Tel

01/10/2009 14:26:00
Quote Anchor link
Goedemiddag,

Ik heb momenteel het volgende script:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?  if  (trim($_POST['checkbox'])) { include("config.php");
 
$naam   = mysql_escape_string($_POST['name']);
$email  = mysql_escape_string($_POST['email']);
$ip      = mysql_escape_string($_SERVER["REMOTE_ADDR"]);


 
$add_all   = "INSERT INTO wiml_maillist VALUES ('','','$naam','$email','$ip', '".time()."','2')";
mysql_query($add_all, $db) or die (mysql_error());
mysql_close($db); ?>


<form name="form" method="POST" >
<input name="form" type="hidden" value="" />
<table>
<tr>
<td width="195">Naam: <i>*</i></td>
<td width="401"> <input type="tekst"name="name" id="email2">
</td></tr>
<tr>
<td>E-mail adres: <i>*</i></td>
<td><input type="tekst"name="email" id="email2"></td>
</tr>
<td>Nieuwsbrief ontvangen?</td>
<td>
<input name="checkbox" type="checkbox" value="checkbox" />

</td>
<tr><td>
<input type="submit" name="Submit2" value="Versturen" onclick="" id="button" /></td></tr>
</table>

Alles gaat goed, dat wil zeggen dat hij het mits de checkbox is aangevinkt hij alle data in de database zet.
Enkel als $email al in de database voorkomt krijg ik:
Duplicate entry '[email protected]' for key 2

Is het ook mogelijk dat hij deze foutmelding negeert en gewoon doorgaat met het script.. of een andere manier om het te omzeilen?

Misschien met een if ofzo?
iemand? alvast bedankt
 
PHP hulp

PHP hulp

27/05/2026 09:46:07
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 14:47:00
Quote Anchor link
Zie eens: http://dev.mysql.com/doc/refman/5.1/en/insert.html

MySQL:
If you specify the IGNORE keyword in an INSERT statement, errors that
occur while executing the statement are treated as warnings instead.
For example, without IGNORE, a row that duplicates an existing UNIQUE
index or PRIMARY KEY value in the table causes a duplicate-key error
and the statement is aborted. With IGNORE, the error is ignored and the
row is not inserted


Daar staat een INSERT IGNORE INTO of evt. kun je REPLACE INTO gebruiken.
 
- Ariën  -
Beheerder

- Ariën -

01/10/2009 14:51:00
Quote Anchor link
En plak jij ook altijd de irritante knipperende alarm-ledjes op je autodashboard dan af :-P?
 
Rob Tel

rob Tel

01/10/2009 14:52:00
Quote Anchor link
bedankt, heb het bekeken.. maar moet ik dan niet eerst een soort if inzetten om te checken of $email duplicate is?

ik ben niet echt gevorderd met php, weet je misschien hoe ik kan checken of de $email dubbel is? want enkel in dat geval mag hij de insert ignoren...

bedankt

ps; ik heb geen auto;-)
 
Jaron T

Jaron T

01/10/2009 14:54:00
Quote Anchor link
Negeren ( fout onderdrukken ) is geen (goede) manier van oplossen ;)
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 14:54:00
Quote Anchor link
Quote:
En plak jij ook altijd de irritante knipperende alarm-ledjes op je autodashboard dan af :-P?
Nee, maar in dit geval is het gaat in dit geval enkel om een UNIQUE in dat geval ga ook liever voor een REPLACE. Maar je zou het ook in PHP kunnen afvangen en daar de errors negeren die jou even niet welgevallig zijn.
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 14:56:00
Quote Anchor link
Quote:
Negeren ( fout onderdrukken ) is geen (goede) manier van oplossen ;)
Ah, nu snap ik waarom we tegenwoordig allemaal zo'n fan zijn van die TRY-CATCH-FINALLY-structuur en mensen die werken met error-reporting E_NONE en überhaupt van MySQL...

PS:
Je kunt ook gewoon even afvangen met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
mysql_query($sInsertQuery);
if(mysql_errorno() == 1062) echo 'Sorry, maar jij probeert te dupliceren';
else if(mysql_errorno()) echo 'Er is een andere fout opgetreden';
?>

Overigens moet je dan wel een UNIQUE-key op de (combinatie van) kolom(men) hebben die je uniek wilt hebben.

'Gelieve:
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de Afbeelding knop om je tekst aan te passen.

SanThe.
Gewijzigd op 01/01/1970 01:00:00 door Jan Willem van der Veer
 
Rob Tel

rob Tel

01/10/2009 14:56:00
Quote Anchor link
hmm het gaat erom dat er bij een contactformulier de optie wordt geboden om je aan te melden voor de nieuwsbrief..

maar als iemand dan al ingeschreven is voor de nieuwsbrief en toch een x het contactformulier verzend en daarbij aanvinkt dat hij de nieuwsbrief wil ontvangen dan krijg ik die melding en verstuurd hij de contactform niet..

vandaar dat ik hem wil omzeilen..
het is me echter nog steeds niet gelukt..

iemand?
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 15:02:00
Quote Anchor link
Quote:
maar als iemand dan al ingeschreven is voor de nieuwsbrief en toch een x het contactformulier verzend en daarbij aanvinkt dat hij de nieuwsbrief wil ontvangen dan krijg ik die melding en verstuurd hij de contactform niet..
Is die tabel voor nieuwsbriefontvangers een aparte tabel? Dan zou ik gewoon een UNIQUE-key zetten op de kolom `mailaddress` (of hoe die bij jou ook mag heten). Bij het falen van de query op die tabel zou ik er gewoon vanuit gaan dat het een duplicatie is en dat hij daarom mislukt is (in theorie zijn er nog een paar andere mogelijkheden, maar die komen zeer weinig voor en daarnaast kun je er weinig mee dan zeggen dat het niet gelukt is om de persoon toe te voegen aan de tabel).
 
Rob Tel

rob Tel

01/10/2009 15:06:00
Quote Anchor link
hmm oke, en waar kan ik dat doen?

het gaat er nu dus om dat als het mailadres al in de database staat (aparte tabel) en iemand vult het contactformulier in en vinkt de optie om de nieuwsbrief te ontvangen aan dan krijg ik de melding

Duplicate entry '[email protected]' for key 2

en verstuurt hij het contactformulier niet meer... dat kan ik dus omzeilen middels unique?
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 15:12:00
Quote Anchor link
Quote:
Duplicate entry '[email protected]' for key 2
Jij krijgt die error al?
Nou dan moet je gewoon eens een keer dit:
mysql_query($query) or die();
vervangen door:
mysql_query($query);
 
Rob Tel

rob Tel

01/10/2009 15:16:00
Quote Anchor link
hmm als ik die weghaal dan doet hij mijn andere php validaties niet meer zoals:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?if (isset($_POST['name']) && trim($_POST['name']) == '') { ?>

<div class="contactblock">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?
       print 'U heeft geen naam ingevuld.'?>
<a href='javascript:history.go(-1)'>Ga terug.</a></div>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? ;}
 
Rob Tel

rob Tel

01/10/2009 15:23:00
Quote Anchor link
trouwens als ik:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?mysql_query($add_all, $db) or die (mysql_error()); ?>


verander in

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?mysql_query($add_all, $db)
if(mysql_errorno() == 1062) echo 'Sorry, maar jij probeert te dupliceren';
else if(mysql_errorno()) echo 'Er is een andere fout opgetreden'; ?>


dan krijg ik:

Parse error: syntax error, unexpected T_IF in /home/p670/domains/ipodsoftware.nl/public_html/contact.php on line 103

'Gelieve:
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de Afbeelding knop om je tekst aan te passen.

SanThe.
Gewijzigd op 01/01/1970 01:00:00 door rob Tel
 
Richard van Velzen

Richard van Velzen

01/10/2009 15:31:00
Quote Anchor link
Ja, je bent een ; vergeten...

Quote:
Nee, maar in dit geval is het gaat in dit geval enkel om een UNIQUE in dat geval ga ook liever voor een REPLACE. Maar je zou het ook in PHP kunnen afvangen en daar de errors negeren die jou even niet welgevallig zijn.

Oh ja, we willen natuurlijk allemaal dat onze mooie cascadende foreign keys doorvallen en ineens alle data weg is? REPLACE is een ramp, vergeet alsjeblieft dat het überhaupt bestaat.
 
Rob Tel

rob Tel

01/10/2009 15:31:00
Quote Anchor link
heb het opgelost jongens met de oplossing van Jan Willem van der Veer

hartelijk dank
 
Jan Willem van der Veer

Jan Willem van der Veer

01/10/2009 15:34:00
Quote Anchor link
Quote:
Oh ja, we willen natuurlijk allemaal dat onze mooie cascadende foreign keys doorvallen en ineens alle data weg is? REPLACE is een ramp, vergeet alsjeblieft dat het überhaupt bestaat.
Ik heb niet voor niets gezegd dat als je foutloos wilt werken dat je dan in elk geval niet voor MySQL moet kiezen. Daarnaast zou ik in dit geval ook nooit een FK/PK-relatie opzetten, gezien je best wel wilt dat mensen zichzelf uitschrijven, maar die nieuwsbrief moeten ze lekker apart uitschrijven ;)

Maar ja: je zou natuurlijk altijd kunnen gaan voor ON DUPLICATE UPDATE kolom_met_oude_waarde=kolom_met_oude_waarde;
Gewijzigd op 01/01/1970 01:00:00 door Jan Willem van der Veer
 
Phillip Mango

Phillip Mango

18/11/2010 10:03:02
Quote Anchor link
Het moet zo zijn:

if(mysql_errno() == 1062)

i.p.v.

if(mysql_errorno() == 1062)
 



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.