Kijken of een kolom bestaat

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim van Norde

Tim van Norde

06/03/2011 18:14:58
Quote Anchor link
Ik en een vriend hebben vrijstelling van PHP op school, dus zijn we een eigen project begonnen (browsergame). Nu wil ik graag bij het kopen van een wapen kijken of de kolom _$wepID al bestaat, wepID is het id van het wapen.

Als deze kolom niet bestaat, wil ik hem graag aanmaken.

Dus heel simpel is mijn vraag;

Hoe kun je checken of de kolom al bestaat?
 
PHP hulp

PHP hulp

27/11/2024 15:37:02
 
Maarten PHP

Maarten PHP

06/03/2011 18:22:36
Quote Anchor link
Plaats een wat code
 
Noppes Homeland

Noppes Homeland

06/03/2011 18:25:05
Quote Anchor link
En waar heb je het nu over? Benoem de zaken bij de juiste technische benamingen!!!

Dus als je het hebt over een database tabel veld dan moet je dat ook als zodanig kenbaar maken.

_$wepID is sowieso al geen juiste benaming voor iets

PHPer PHPer op 06/03/2011 18:22:36:
Plaats een wat code

Wat is dit nu weer voor vraag - je hebt geen code nodig om deze vraag te beantwoorden -, het feit wil dat ie gewoon de documentatie moet raadplegen
Gewijzigd op 06/03/2011 18:27:23 door Noppes Homeland
 

06/03/2011 18:51:43
Quote Anchor link
Noppes Homeland op 06/03/2011 18:25:05:
(...) het feit wil dat ie gewoon de documentatie moet raadplegen


Of maken. De UML dus (klasse diagrammen, diagrammen voor de database, use-cases(?), etc.).
 
Noppes Homeland

Noppes Homeland

06/03/2011 18:58:25
Quote Anchor link
Misschien ook eens verdiepen in database normalisatie

dan kan er ook niet iets zomaar ontstaan, want dan bestaat het al
Gewijzigd op 06/03/2011 19:11:55 door Noppes Homeland
 
Tim van Norde

Tim van Norde

06/03/2011 19:32:31
Quote Anchor link
Noppes Homeland op 06/03/2011 18:25:05:
En waar heb je het nu over? Benoem de zaken bij de juiste technische benamingen!!!

Dus als je het hebt over een database tabel veld dan moet je dat ook als zodanig kenbaar maken.

_$wepID is sowieso al geen juiste benaming voor iets

PHPer PHPer op 06/03/2011 18:22:36:
Plaats een wat code

Wat is dit nu weer voor vraag - je hebt geen code nodig om deze vraag te beantwoorden -, het feit wil dat ie gewoon de documentatie moet raadplegen


$wepID bevat een id, zoals ik al eerder zei.
Volgens mij wordt ik hier zwaar aangevallen op de normaalste vraag.

num rows lijkt me handig.
 
Jasper DS

Jasper DS

06/03/2011 19:36:11
Quote Anchor link
je kan rijen tellen met mysql_num_rows.

Stel je doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT veld FROM tabel WHERE id = '1'

en je gaat daar met mysql_num_rows() (nadat je de query uitgevoerd hebt) over dan krijg je 1 als de rij bestaan en 0 als de rij niet bestaat
Gewijzigd op 06/03/2011 19:36:38 door Jasper DS
 

06/03/2011 19:41:32
Quote Anchor link
Tim van Norde op 06/03/2011 19:32:31:
Noppes Homeland op 06/03/2011 18:25:05:
En waar heb je het nu over? Benoem de zaken bij de juiste technische benamingen!!!

Dus als je het hebt over een database tabel veld dan moet je dat ook als zodanig kenbaar maken.

_$wepID is sowieso al geen juiste benaming voor iets

PHPer PHPer op 06/03/2011 18:22:36:
Plaats een wat code

Wat is dit nu weer voor vraag - je hebt geen code nodig om deze vraag te beantwoorden -, het feit wil dat ie gewoon de documentatie moet raadplegen


$wepID bevat een id, zoals ik al eerder zei.
Volgens mij wordt ik hier zwaar aangevallen op de normaalste vraag.

num rows lijkt me handig.


Nee, de situatie die jij uitlegt wijst heel veel op een verkeerd database model. Daarmee kom je in de problemen als je dat niet verbeterd.

PHP Jasper op 06/03/2011 19:36:11:
je kan rijen tellen met mysql_num_rows.

Stel je doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT veld FROM tabel WHERE id = '1'

en je gaat daar met mysql_num_rows() (nadat je de query uitgevoerd hebt) over dan krijg je 1 als de rij bestaan en 0 als de rij niet bestaat

Cursusje SQL doen? Klik.
 
Jasper DS

Jasper DS

06/03/2011 19:44:47
Quote Anchor link
wat is daar fout aan?

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
15
<?php
$sql
= "SELECT veld FROM tabel WHERE id='1'";
if(($result = mysql_query($sql))=== false)
{

    echo 'error';
}

else
{
    if(mysql_num_rows($result) != 0)
    {

        echo 'rij bestaat';
    }
    
}

?>


edit: dus karl, je punt is dat we in dit geval beter COUNT gebruiken. Dat is echt een klein detail. De snelheid zal iets sneller zijn.
Gewijzigd op 06/03/2011 19:47:57 door Jasper DS
 
Pim -

Pim -

06/03/2011 19:45:59
Quote Anchor link
Je kan ook de waarde uniek maken en niets doen bij een foutmelding.

Maar mensen, kom op zeg. De TS is duidelijk een beginner en behandel hem dus zo: als een mens dat fouten kan maken. Ik zou dit bijna tenenkrommende arrogantie willen noemen, maar doe dat maar niet ;)
Gewijzigd op 06/03/2011 19:48:32 door Pim -
 
Tim van Norde

Tim van Norde

06/03/2011 19:48:25
Quote Anchor link
Dankjulliewel :)
Het is gelukt :)
 

06/03/2011 19:50:53
Quote Anchor link
Pim - op 06/03/2011 19:45:59:
Je kan ook de waarde uniek maken en niets doen bij een foutmelding.

Maar mensen, kom op zeg. De TS is duidelijk een beginner en behandel hem dus zo: als een mens dat fouten kan maken. Ik zou dit bijna tenenkrommende arrogantie willen noemen, maar doe dat maar niet ;)


Niets is zo erg als een verkeerd database model.
 
Pim -

Pim -

06/03/2011 20:55:34
Quote Anchor link
Hoezo? Met niet-perfecte datamodellen kan je prima werken. Verder snap ik ook niet echt hoe je aan de topicstart af kan leiden dat de TS een verkeerd datamodel gebruikt.

Maar dat doet er allemaal niet echt toe. Wat ik belangrijker vind is de manier hoe je met beginners (op dit forum) omgaat. Die hoor je welkom te heten en niet op deze manier te behandelen.
 
Noppes Homeland

Noppes Homeland

06/03/2011 21:01:59
Quote Anchor link
En hoe lees je dit dan:
Quote:
Als deze kolom niet bestaat, wil ik hem graag aanmaken.


Hieruit leid ik af dat ie on the fly tabelvelden wil toevoegen aan een database tabel.

Maar ja, het is eigenlijk nog steeds niet duidelijk wat de TS nu met z'n openingspost bedoeld. En uitleggen wat ie bedoelt kan ie niet omdat ie in feite op een nivo zit waarop de basiskennis - welke in feite benodigd is om het een en andere te kunnen vragen - niet aanwezig is.
 
Pim -

Pim -

06/03/2011 21:29:49
Quote Anchor link
Nee, ik denk dat hij kolom en rij verwart.

Maar waarom zeg je dat dan niet?
 
Wouter J

Wouter J

06/03/2011 21:31:25
Quote Anchor link
Ik ben het eens met Pim. De manier zoals op dit forum beginners worden afgekeurd om dat ze nog niet alles weten is abnormaal. Beginners zijn er om te leren, ze weten nog niet overal de juiste benamingen voor en hebben misschien nog wel nooit gehoord van normalisatie? Dus spreek ze eens aan zoals jij vroeger ook wou dat er geantwoord werd op een vraag. Want zeg nou eens zelf: Ben jij vroeger de hele documentatie afgegaan als je een vraag had? Heb jij nooit een verkeerde benaming gebruikt?
 

06/03/2011 21:38:45
Quote Anchor link
Hij heeft een vrijstelling van school, dan lijkt mij dat hij al wel wat kan.
En ja, ik ging altijd de documentatie doorlezen. Zeker de documentatie van php is ontzettend handig om door te lezen, er staat ontzettend veel in en ontzettend duidelijk. Ga maar eens assembly doen, dan kom je in vaagheid terecht....
 
Wouter J

Wouter J

06/03/2011 21:43:37
Quote Anchor link
Jasper PHP:
Wat is daar fout aan?[/url]
Ik denk dat karl bedoelt dat je van een getal altijd een int moet maken en geen string, dus zonder quotes.
 
Jasper DS

Jasper DS

06/03/2011 21:44:48
Quote Anchor link
ja + dat ik COUNT moest gebruiken.
 

06/03/2011 21:44:49
Quote Anchor link
Wouter J op 06/03/2011 21:43:37:
Jasper PHP:
Wat is daar fout aan?

Ik denk dat karl bedoelt dat je van een getal altijd een int moet maken en geen string, dus zonder quotes.


Ja? Leuk hoor je hebt iets gekopieerd om iets te zeggen. Kan je dat dan ook even onderbouwen?
Gewijzigd op 06/03/2011 21:46:10 door
 



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.