login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Naam bestaat al (Opgelost)

Offline ArcanA - 04/04/2010 18:49
Avatar van ArcanAPHP beginner Hallo,

Ik heb een script gemaakt waardoor ik categorieën kan aanmaken. Alleen als ik een categorie aanmaak die niet alleen uit letters en cijfers bestaan, vb: Auto's.. dan kan ik deze blijven aanmaken, hij controleert namelijk niet dat deze naam al bestaat. Wie kan me helpen?

  1. <?php
  2. if (isset ($_POST['maak']) ){
  3. # Categorie naam bestaat al
  4. $sQuery = "SELECT * FROM categories WHERE naam = '".$_POST['categorie']."' ";
  5. $sResult = mysql_query($sQuery);
  6. $iCountExist = mysql_num_rows($sResult);
  7.  
  8. if ( empty ($_POST['categorie']) ){
  9. $sError[] = "U hebt geen categorie naam ingevuld.";
  10. }
  11. if ($iCountExist == 1){
  12. $sError[] = "Deze categorie naam bestaat al.";
  13. }
  14. if (count($sError) > 0){
  15. foreach($sError as $fout){
  16. echo '<table width="40%"><tr><td><span class="RED">* '.$fout.'</span></td></tr></table>';
  17. }
  18. }
  19. else {
  20. # Variabels defienëren
  21. $sNaam = mysql_real_escape_string($_POST['categorie']);
  22. # Categorie aanmaken
  23. $sQuery = "INSERT INTO categories (naam) VALUES ('".$sNaam."')";
  24. mysql_query($sQuery) or die (mysql_error());
  25. }
  26. }
  27. ?>

2 antwoorden

Gesponsorde links
Offline jasper56 - 04/04/2010 20:25
Avatar van jasper56 Nieuw lid misschien dit:
if ($iCountExist == 1){
even veranderen in dit:
if ($iCountExist >= 1){ of dit if ($iCountExist != 0){
Bedankt door: ArcanA
Offline lemoinet - 04/04/2010 20:36 (laatste wijziging 04/04/2010 20:38)
Avatar van lemoinet PHP gevorderde user input altijd controleren vooraleer het in de query in te vullen
beneden doe je het goed bij je insert, maar vanboven niet
  1. <?php
  2. if (isset ($_POST['maak']) )
  3. {
  4. if ( empty ($_POST['categorie']) ){
  5. $sError[] = "U hebt geen categorie naam ingevuld.";
  6. }else{
  7. $$sQuery = sprintf("SELECT * FROM categories WHERE naam = '%s'", mysql_real_escape_string($_POST['categorie']));
  8. $sResult = mysql_query($sQuery);;
  9. if ($iCountExist == 1){
  10. $sError[] = "Deze categorie naam bestaat al.";
  11. }
  12. if (count($sError) > 0){
  13. foreach($sError as $fout){
  14. echo '<table width="40%"><tr><td><span class="RED">* '.$fout.'</span></td></tr></table>';
  15. }
  16. }
  17. else {
  18. # Variabels defienëren
  19. $sNaam = mysql_real_escape_string($_POST['categorie']);
  20. # Categorie aanmaken
  21. $sQuery = "INSERT INTO categories (naam) VALUES ('".$sNaam."')";
  22. mysql_query($sQuery) or die (mysql_error());
  23. }
  24. }
  25. }
  26. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.188s