MYSQL Duplicate entry negeren?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.Net Front-end Ontwikkelaar

Wij zoeken een .Net Front-end Ontwikkelaar! Omschrijving Kun jij snel schakelen en ben je stressbestendig? Dan zoeken wij jou! Als .Net Front-end Ontwikkelaar help je mee aan de webapplicatie die over de hele wereld door allerlei bedrijven wordt gebruikt. Je werkt daarnaast mee aan nieuwe en verbeterde functionaliteiten en helpt met het oplossen van bugs. Over de opdrachtgever Je komt te werken in een ambitieus team dat zich blijft ontwikkelen. Dit is alle informatie die we nu kunnen delen over de werkplek. Als jij de .Net Front-end Ontwikkelaar bent voor deze job, vertellen we je snel nóg meer. Eisen Heb

Bekijk vacature »

Ervaren PHP Software Developer

Functieomschrijving Voor een toffe opdrachtgever in regio Breda zijn wij op zoek naar een medior PHP Developer met affiniteit met Laravel. Je komt te werken bij een uitdagende opdrachtgever met supergave klanten in een specifieke branche. Als PHP ontwikkelaar ben je samen met een vooruitstrevende team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het vernieuwen van informatiesystemen voor een specifieke branche. Je ondersteunt complexe uitdagingen van klanten. Vervolgens breng je hun wensen in kaart en vertaalt deze door naar maatwerk software. Affiniteit met Laravel is een pré. Om de klanten zo goed mogelijk te ondersteunen en snel in

Bekijk vacature »

Teamlead PHP Developer

Functieomschrijving Voor een gewaardeerde werkgever in de buurt van Middelburg zijn wij op zoek naar een gemotiveerde teamlead PHP developer met affiniteit met Symfony/Laravel. Een enthousiast persoon die het ontwikkelteam komt versterken met het aanpakken van uitdagende projecten. Ben jij op zoek naar een uitdaging waar je de tijd en ruimte krijgt jezelf te ontwikkelen en je eigen IT-team aan te sturen? Lees dan snel verder! Die ga je doen: Bijdragen aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de PHP based applicaties; Ontwikkeling en beheer van de serviceportal in Symfony en de webshops in de tweede versie van

Bekijk vacature »

Senior Full Stack developer

Bedrijfsomschrijving tbd Functieomschrijving Full Stack Java Development bij Randstad Groep Nederland (HQ) Er is een vacature in het Corporate Client Solutions (CCS) team. Dit team is met een ander team net begonnen aan het project ‘Grip op Inhuur’. Het doel van dit project is de tevredenheid van onze leveranciers te verhogen en de efficiëntie van onze administratie te verbeteren. Onderdeel daarvan is een ‘Mijn-omgeving’ voor ZZP’ers en leveranciers. Naast dit nieuwe project werkt het team ook aan het onderhoud en verbeteren van een digitaal vacature management systeem waarmee dagelijks vele vacatures worden voorzien. Het team ontwikkelt zo veel mogelijk zelf

Bekijk vacature »

Front-end Developer Magento 2/Wordpress

Voor het aantrekkelijk houden en steeds vernieuwen van de huidige websites en webshops en het meedenken in de marketing zijn wij per direct op zoek naar een ervaren Front-end developer met gedegen kennis van Magento 2 (webshops) en Wordpress (websites). Wat bieden wij jou Mooi salaris! Meteen op contract bij de opdrachtgever! Gezellig, Kempisch bedrijf! 35 uur per week! Auto van de zaak! Wie ben jij Van een front-end developer verwachten wij: Een afgeronde Bachelor ICT opleiding met profiel ICT & Media Design. Dat je in het bezit bent van een Magento 2 professional front-end developer certificaat; Je hebt ruime

Bekijk vacature »

.Net ontwikkelaars voor de zorgsector

Bedrijfsomschrijving Voor onze klant in de omgeving van Zwolle zijn wij op zoek naar een ervaren .Net ontwikkelaar, bij voorkeur met ervaring binnen de belangrijkste sector van Nederland, namelijk: de zorgsector. Deze internationale organisatie ontwikkelt software voor de zorgsector. Er werken zo'n 25 medewerkers hard aan een oplossing die gebruikt wordt door heel Nederland. Er heerst een informele sfeer waarbij er altijd ruimte is voor een grapje. Je collega's zijn stuk voor stuk sterke ontwikkelaars vanuit verschillende achtergronden en met verschillende leeftijden. Je komt hier terecht in een organisatie die zich hard inzet om de zorgsector te verbeteren. De mogelijkheden

Bekijk vacature »

3D BIM Add-on Developer

As a 3D BIM add- on developer at KUBUS, you will develop add-ons (called BCF- Managers) to the leading building information modeling (BIM) programs Revit, Navisworks, Archicad, AutoCAD and Tekla Structures. BCF Managers enable data transfer between BIM software and BIMcollab. You will work on both the front- and the back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual

Bekijk vacature »

Als PHP developer (Symfony) bijdragen aan betere z

Functie Als Medior/Senior PHP developer wordt er een mate van zelfstandigheid verwacht, maar ook dat je goed in een team kunt opereren waar kennis wordt gedeeld en er bijvoorbeeld codereviews plaatsvinden. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden geactualiseerd.

Bekijk vacature »

Technisch Applicatie ontwikkelaar

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! In deze functie werk jij voornamelijk aan: Het onderhouden en ontwikkelen van de IT systemen; Het opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werk je aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkel en implementeren je MS PowerApps en Power BI. Bedrijfsprofiel Je komt terecht bij een familiair

Bekijk vacature »

Medior/senior Front-end developer (Vue.js)

Functie Als Front-end developer ben je uiteindelijk overkoepelend aan de slag voor de 3 ontwikkelteams die ieder aan een specifiek product werken. In samenwerking met de UX-designer en de huidige Front-end developer zorg je voor gebruiksvriendelijke software. Lijkt het jou interessant om complexe problemen op te lossen en feautures naar een hoger niveau te tillen? En vind je het niet erg om oudere delen van de applicaties te refactoren i.c.m. het toevoegen van nieuwe functionaliteiten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en zelfredzaamheid)

Bekijk vacature »

Medior PHP Developer

Functie omschrijving We are looking for a dutch native speaker Wil jij als developer werken bij een interne organisatie en de eigen software verder helpen ontwikkelen? Lees dan snel verder! In deze functie ga je werken als PHP Developer en de interne software en applicaties verder ontwikkelen. In het kort houdt dit in: Je gaat de interne applicaties en software verder optimaliseren. Verder bouw je verschillende API's en koppelingen tussen systemen. Je gaat het CRM-systeem door middel van PHP verder ontwikkelen. Ook ga je collega's ondersteunen bij vragen over de software en applicaties. Bedrijfsprofiel Dit bedrijf is actief in het

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Developer

Functie omschrijving In deze functie ga je werken als C# Developer. Jij gaat aan de slag met de volgende taken: Maatwerk software bouwen; Huidige softwareprojecten verder uitbouwen en optimaliseren; Ideeën van de klant omzetten naar handige oplossingen en tools; Bovenstaande doe je middels de Microsoft- stack: C#, ASP.NET en MVC/ Entity Framework. Ben je net afgestudeerd aan een HBO opleiding Informatica, aarzel dan niet om te solliciteren. Dit is namelijk de ideale startersfunctie! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van websites. Dit is door

Bekijk vacature »

Front end developer

Functie Jij als ervaren Front end developer bent een expert het gebied van Javascript en React. Je wordt onderdeel van een multidisciplinair team bestaande uit een PO, twee Front end developers, een DevOps/Back end developer, een UX/UI designer en een projectmanager. Verder is er iemand verantwoordelijk voor de HR en is de algemeen directeur nauw betrokken bij alle projecten. Dagelijks hou jij je bezig met de verschillende projecten die zijn opgenomen in de sprint. Daarnaast denk je mee over mogelijke oplossingen om de behoefte van de klant op de beste manier in te vullen. Verder spar jij intern met collega’s

Bekijk vacature »

Cymer Patch Server Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12919 Introductie This new patch server will be built on Python and Django ReST and GraphQL services with a React frontend, it will consist of several microservices and run on a Kubernetes cluster. It will be supported by several middleware applications such as ElasticSearch, Redis, RabbitMQ, Oracle and Artifactory. Functieomschrijving The Patch Admin team always aim to deliver software at a high quality, we avoid sacrifices here to maintain our velocity. Practically this means that we practice test driven development and perform end-to-end automated testing on our software. This means

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

08/11/2024 09:50:30
 
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 Niet Bumpen::
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 Niet Bumpen::
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.