abonnement Unibet Coolblue Bitvavo
pi_25860805
quote:
Op woensdag 30 maart 2005 17:27 schreef sv3n het volgende:

[..]

nou dan geloof je me toch niet, ik heb t echt niet zelf bedacht, maar mijn leraren informatieanalyse en het is meerdere keren gezegd bij een college over databases, msschien dat je het nu gelooft
Neem een tabel met relaties. Je zou kunnen stellen dat de naam uniek moet zijn. Die zou je dan als primary key kunnen gebruiken. Misschien overzichtelijk, maar erg onhandig als je de naam wil veranderen. Bovendien heb je dan een varchar key, dat lijkt me niet bevorderlijk voor de snelheid.
Je zou er ook voor kunnen kiezen dat de gebruiker een unieke code aan de relatie moet geven, maar ik zie in de praktijk dat gebruikers daar niet van houden.

Zie ik dit nou verkeerd? Hoe zou jij dit oplossen, of heb je een beter voorbeeld om je punt duidelijk te maken.
quote:
Op maandag 28 maart 2005 23:32 schreef sv3n het volgende:
[..] het vermijden van autoincrement is om logischere structuren in je database te krijgen en om deze leesbaarder te houden, er zijn nog wel meer redenen maar die zou ik ff moeten nazoeken
Zou je ff willen zoeken, ik ben nog niet overtuigd.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25863416
Ik gebruik het volgende in een functie
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$hoofd = <<<EOF
         <table class=hoofd cellPadding=5px>
            <tr>
               <td class="caption1">test</td>
            </tr>
            <tr>   
               <td class="tablebody">
                   Wijziging is doorgevoerd, u wordt teruggestuurd naar de 
hoofdpagina.
                  <script type="text/javascript">setTimeout("top.location.href
 ='http://www.vogelaars.nl' ",3000);</script>
               </td>
            </tr>
         </table>
EOF;

Ik gebruik dit wel vaker, en meestal werkt het ook. Alleen soms geeft het de volgende error :

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING'

Hoe komt dat?Ligt dat aan de plaats waar het staat?
pi_25864723
Er mag niets anders op de EOF regel staan:
quote:
It is very important to note that the line with the closing identifier contains no other characters, except possibly a semicolon (;). That means especially that the identifier may not be indented, and there may not be any spaces or tabs after or before the semicolon. It's also important to realize that the first character before the closing identifier must be a newline as defined by your operating system. This is \r on Macintosh for example.

If this rule is broken and the closing identifier is not "clean" then it's not considered to be a closing identifier and PHP will continue looking for one. If in this case a proper closing identifier is not found then a parse error will result with the line number being at the end of the script.
bron
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  FOK!-Schrikkelbaas woensdag 30 maart 2005 @ 20:57:31 #184
1972 Swetsenegger
Egocentrische Narcist
pi_25865238
Wat is nu de makkelijkste manier om een unieke naam te genereren.
Ik heb dus files waarvan de naam in de tabel staan (gekoppeld aan andere gegevens).
Die files moeten allemaal een unieke naam hebben, want anders zou het voor kunnen komen dat de gebruiker twee verschillende files met dezelfde naam upload.

Uiteraard heb ik later die naam weer nodig wanneer de record gewijzigd wordt of gedelete.

Ik zat al te denken om het simpelweg met id op te vangen, maar dat betekent bij elke handeling twee queries (eerst om het huidige hoogste ID te vinden en vervolgens om de verandering in de tabel door te voeren)

Iemand een beter idee?
pi_25865587
Maar dan doe ik toch niks fout in mijn code?
pi_25865849
quote:
Op woensdag 30 maart 2005 20:57 schreef Swetsenegger het volgende:

Ik zat al te denken om het simpelweg met id op te vangen, maar dat betekent bij elke handeling twee queries (eerst om het huidige hoogste ID te vinden en vervolgens om de verandering in de tabel door te voeren)
ID op auto-increment zetten? Met mysql_insert_id kun je naderhand nagaan welk ID is ingevoegd.
pi_25865852
quote:
Op woensdag 30 maart 2005 21:08 schreef ikke_ook het volgende:
Maar dan doe ik toch niks fout in mijn code?
Misschien een spatie of tab te veel?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25865990
quote:
Op woensdag 30 maart 2005 20:57 schreef Swetsenegger het volgende:
Wat is nu de makkelijkste manier om een unieke naam te genereren.
Ik heb dus files waarvan de naam in de tabel staan (gekoppeld aan andere gegevens).
Die files moeten allemaal een unieke naam hebben, want anders zou het voor kunnen komen dat de gebruiker twee verschillende files met dezelfde naam upload.

Uiteraard heb ik later die naam weer nodig wanneer de record gewijzigd wordt of gedelete.

Ik zat al te denken om het simpelweg met id op te vangen, maar dat betekent bij elke handeling twee queries (eerst om het huidige hoogste ID te vinden en vervolgens om de verandering in de tabel door te voeren)

Iemand een beter idee?
Als je later de originele bestandsnaam nog wil gebruiken, dan ontkom je er eigenlijk niet aan om de originele bestandsnaam en de uniek gemaakte bastandsnaam op te laan in de database.

Zo'n unieke bestandsnaam kan je natuurlijk op verschillende manieren maken:
- op basis van de autoincrement id (jaja sv3n )
- op basis van uniqid()
- zelf een random string maken (md5 misschien?)
- een volgnummer toevoegen indien de bestandsnaam al bestaat
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_25867268
Lijkt me best een goede oplossing Swets.

-edit-
pffffffff Dit bericht had er een uur geleden al moeten staan...
  FOK!-Schrikkelbaas woensdag 30 maart 2005 @ 22:18:56 #190
1972 Swetsenegger
Egocentrische Narcist
pi_25867508
quote:
Op woensdag 30 maart 2005 21:33 schreef SuperRembo het volgende:

[..]

Als je later de originele bestandsnaam nog wil gebruiken, dan ontkom je er eigenlijk niet aan om de originele bestandsnaam en de uniek gemaakte bastandsnaam op te laan in de database.
Neenee, ik hoef de naam later niet te gebruiken. Ik bedoel wanneer iemand een record edit en een nieuw bestand upload moet deze dezelfde naam krijgen als het eerdere bestand.
quote:
Zo'n unieke bestandsnaam kan je natuurlijk op verschillende manieren maken:
- op basis van de autoincrement id (jaja sv3n )


Gewoon MAX(id) uit de database trekken en er 1 bij optellen denk ik dan?
quote:
- op basis van uniqid()
Dit is op basis van microtime zie ik in de manual. Dit is dus altijd uniek. Hmz, dat is het makkelijkst denk ik
[/quote]
  FOK!-Schrikkelbaas woensdag 30 maart 2005 @ 22:20:25 #191
1972 Swetsenegger
Egocentrische Narcist
pi_25867556
quote:
Op woensdag 30 maart 2005 21:30 schreef Light het volgende:

[..]

ID op auto-increment zetten? Met mysql_insert_id kun je naderhand nagaan welk ID is ingevoegd.
Deze kon ik nog niet ?
pi_25868122
quote:
Op woensdag 30 maart 2005 22:18 schreef Swetsenegger het volgende:

Gewoon MAX(id) uit de database trekken en er 1 bij optellen denk ik dan?
Dan kan mis gaan als meerdere gebruikers tegelijk uploaden.
Beter is om eerst een record te inserten en dan met mysql_insert_id de nieuwe id op te vragen (zoals ikke_ook Light al zei). Dat betekent wel dat je de nieuwe naam pas weet nadat je het record opgeslagen hebt. Daarom gebruik ik zelf ook uniqid().
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  FOK!-Schrikkelbaas woensdag 30 maart 2005 @ 22:45:02 #193
1972 Swetsenegger
Egocentrische Narcist
pi_25868283
Simpel edoch doeltreffend

1
2
3
4
5
6
<?php
$thumb
="../occassion/thumb/";
$unique=uniqid('');
$new_name="{$thumb}{$unique}.jpg";
echo
$new_name;
?>
pi_25868537
Welke type moet in mijn mysql database een veld hebben die decimale getallen heeft?
varchar is leuk, maar dan kan ik niet sorteren op die waarde.

en moet het met komma's of met punten zijn (45,67 of 45.67)
  FOK!-Schrikkelbaas woensdag 30 maart 2005 @ 22:55:02 #195
1972 Swetsenegger
Egocentrische Narcist
pi_25868595
quote:
Op woensdag 30 maart 2005 22:53 schreef achterop23 het volgende:
Welke type moet in mijn mysql database een veld hebben die decimale getallen heeft?
varchar is leuk, maar dan kan ik niet sorteren op die waarde.

en moet het met komma's of met punten zijn (45,67 of 45.67)
DECIMAL(7,2)
in dit geval mag het 7 getallen bevatten en twee achter de komma (achter de komma wordt niet bij die 7 gerekend)

DECIMAL gaat uit van een . als scheidingsteken. wil je ze alletwee kunnen invoeren zal je de komma's in php moeten omzetten naar punten en bij het uitlezen weer terug zetten naar komma's.
En er is nog zoiets als FLOAT en DOUBLE enzo, maar daar heb ik nog niets mee gedaan afgelopen jaar
pi_25869021
quote:
Op woensdag 30 maart 2005 22:55 schreef Swetsenegger het volgende:

[..]

DECIMAL(7,2)
in dit geval mag het 7 getallen bevatten en twee achter de komma (achter de komma wordt niet bij die 7 gerekend)

DECIMAL gaat uit van een . als scheidingsteken. wil je ze alletwee kunnen invoeren zal je de komma's in php moeten omzetten naar punten en bij het uitlezen weer terug zetten naar komma's.
En er is nog zoiets als FLOAT en DOUBLE enzo, maar daar heb ik nog niets mee gedaan afgelopen jaar
thanks
pi_25869575
handige functie dat uniquid zeg... daar hadden jullie wel eerder mee mogen komen
pi_25869692
Je kan iets randoms genereren:

1
2
3
4
$charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 
for ($i=0; $i<10; $i++) $key .= $charset[(mt_rand(0,(strlen($charset)-1)))];

echo $key;


En om de originele extensie te behouden:

1$key .= strtolower(substr($filename, strrpos($filename, '.') + 1));


-edit-
verkeerde pagina gekeken
pi_25877891
Ik md5 de lokale tijd (kan in milli/micro seconden) en lees de eerste 6 tekens ervan uit.
Zo maak ik mijn random string.
ne okuyon, bokmu var?
pi_25880132
stel ik heb 3 tekstvelden onderelkaar
de 1e en 2e worden ingevuld
de 3e is een readonly en wordt ingevuld nadat 1 en 2 ingevuld zijn
(de 3e wordt berekend a.d.h.v. de 1e en 2e).
Is dit mogelijk?
Er moet dus een functie worden uitgevoerd nadat de 2e is ingevuld.
pi_25880192
quote:
Op donderdag 31 maart 2005 13:59 schreef achterop23 het volgende:
stel ik heb 3 tekstvelden onderelkaar
de 1e en 2e worden ingevuld
de 3e is een readonly en wordt ingevuld nadat 1 en 2 ingevuld zijn
(de 3e wordt berekend a.d.h.v. de 1e en 2e).
Is dit mogelijk?
Er moet dus een functie worden uitgevoerd nadat de 2e is ingevuld.
Is dat geen JS Hoort niet bij PHP/MYSQL thuis dacht ik zo.
ne okuyon, bokmu var?
pi_25880521
Hmm, je hebt gelijk volgens mij
(niet dat nu zou weten hoe het in javascript moet)
  FOK!-Schrikkelbaas donderdag 31 maart 2005 @ 14:17:12 #203
1972 Swetsenegger
Egocentrische Narcist
pi_25880645
relatime kan het inderdaad alleen met clientside scripting.
Anders moet je een submit doen, uitrekenen en vervolgens de info tonen
pi_25880840
Ik probeer een aantal ids te selecteren maar de ids mogen niet in de array die ik opgeef maar het klopt duidelijk niet. het gaat dus om "uid<>in(0,1)"

SELECT DISTINCT(uid) FROM ppg_images WHERE active='1' AND uid<>in(0,1) LIMIT 9
pi_25882082
Weet je zeker dat dit een PHP-kwestie is? Klinkt meer als javascript.
(als het javascript is, kun je het derde vakje de DISABLED waarde meegeven, <input type="text" disabled> en bij de eerste twee toevoegen onChange='bereken();' doen, bijvoorbeeld, waarin gecheckt wordt of de eerste twee textfields ingevuld zijn, en zo ja wat berekeningen worden gemaakt en aan het derde veld worden meegegeven)

-edit-
wat is er mis met fok? waarom zie ik steeds alle nieuwe reacties niet?
pi_25882812
quote:
Op donderdag 31 maart 2005 14:01 schreef saban het volgende:

[..]

Is dat geen JS Hoort niet bij PHP/MYSQL thuis dacht ik zo.
Kan idd in javascript.
php en mysql.... ja zou ik niet doen.
pi_25891781
quote:
Op donderdag 31 maart 2005 14:24 schreef Darkomen het volgende:
Ik probeer een aantal ids te selecteren maar de ids mogen niet in de array die ik opgeef maar het klopt duidelijk niet. het gaat dus om "uid<>in(0,1)"

SELECT DISTINCT(uid) FROM ppg_images WHERE active='1' AND uid<>in(0,1) LIMIT 9
IEmand?
pi_25891914
quote:
Op donderdag 31 maart 2005 14:24 schreef Darkomen het volgende:
Ik probeer een aantal ids te selecteren maar de ids mogen niet in de array die ik opgeef maar het klopt duidelijk niet. het gaat dus om "uid<>in(0,1)"

SELECT DISTINCT(uid) FROM ppg_images WHERE active='1' AND uid<>in(0,1) LIMIT 9
http://www.webdevelopersn(...)_in_and_between.php3
quote:
Suffixing NOT to IN will display data that is NOT found IN the condition. The following lists employees who hold titles other than Programmer and Marketing Executive.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SELECT f_name, l_name, title from
    -> employee_data where title NOT IN
    -> ('Programmer', 'Marketing Executive');

+---------+----------+----------------------------+
| f_name  | l_name   | title                      |
+---------+----------+----------------------------+
| Manish  | Sharma   | CEO                        |
| John    | Hagan    | Senior Programmer          |
| Ganesh  | Pillai   | Senior Programmer          |
| Anamika | Pandit   | Web Designer               |
| Mary    | Anchor   | Web Designer               |
| Hassan  | Rajabi   | Multimedia Programmer      |
| Paul    | Simon    | Multimedia Programmer      |
| Arthur  | Hoopla   | Multimedia Programmer      |
| Kim     | Hunter   | Senior Web Designer        |
| Roger   | Lewis    | System Administrator       |
| Danny   | Gibson   | System Administrator       |
| Mike    | Harper   | Senior Marketing Executive |
| Shahida | Ali      | Customer Service Manager   |
| Peter   | Champion | Finance Manager            |
+---------+----------+----------------------------+
14 rows in set (0.00 sec)
pi_25892343
quote:
Op donderdag 31 maart 2005 21:57 schreef sylvesterrr het volgende:

[..]

http://www.webdevelopersn(...)_in_and_between.php3
[..]
[ code verwijderd ]
Best logisch weer
Bedankt, ik zocht een goede site waar de syntaxen goed werden uitgelegt.
pi_25892441
quote:
Op woensdag 30 maart 2005 17:27 schreef sv3n het volgende:

[..]

nou dan geloof je me toch niet, ik heb t echt niet zelf bedacht, maar mijn leraren informatieanalyse en het is meerdere keren gezegd bij een college over databases, msschien dat je het nu gelooft
mij hebben ze ook geleerd om bij rationele databases altijd een uniek Indentificatie nummertje te hebben omdat je dan altijd alles goed kan aanroepen. zoals met relaties, alles koppelen m.b.v. ID's
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')