schikken op nr...

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ki ma

ki ma

09/06/2006 00:16:00
Quote Anchor link
// Maak een voorbeeld SQL-query
$sql = "SELECT * FROM sierraden";

// Voer die query uit
$resultaat = mysql_query($sql);

// Aantal rijen
$aantal = mysql_num_rows($resultaat);
echo "Er zijn <b>$aantal</b> artikelen gevonden (zie hieronder):<br>";

// Maak een lus om alle items te laten zien
while ($record = mysql_fetch_object($resultaat)) {
echo "$record->artnr - $record->naam - $record->prijs - $record->aant - $record->beschr ## $record->datum <br>";
}
?>


dan krijg ik dus wat ik heb ingevuld in die table. BV:

Er zijn 3 artikelen gevonden (zie hieronder):
00003 - kjhjhvg - 25,56 - 100 - kjhbkjb hvhgv ## 08-06-2006/23:31:21
00002 - kjbkjb - 56.55 - 100 - khbhb ## 08-06-2006/23:39:10
00004 - yg - 50,00 - 10 - jhub ## 08-06-2006/23:47:05

De eerste kolom zijn de artikel nummers .. maar die staan doorelkaar.. op de volgorde waarin je ze hebt ingevuld. Is er niet een mysql commando die ze op nummer schikt van de eerste kolom.. of moet je het dan met php doen. met de "<" tekens...
Gewijzigd op 01/01/1970 01:00:00 door Ki ma
 
PHP hulp

PHP hulp

17/11/2024 02:42:47
 
Eris -

Eris -

09/06/2006 00:18:00
Quote Anchor link
Maak van de eerste kollom een inteegere en geen varchar
 
Klaasjan Boven

Klaasjan Boven

09/06/2006 00:22:00
Quote Anchor link
en dan :
$sql = "SELECT * FROM sierraden ORDER BY id"
 
Ki ma

ki ma

09/06/2006 00:23:00
Quote Anchor link
Dat had gedaan maar dan kan je er geen 0000 meer voor zetten en dat moet eigelijks wel
 
Eris -

Eris -

09/06/2006 00:28:00
Quote Anchor link
Daar heb je weer phpfuncties (weet het niet zo maar uit mijn hoofd)
 
Klaasjan Boven

Klaasjan Boven

09/06/2006 00:34:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

$fruits
= array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val) {
   echo "fruits[" . $key . "] = " . $val . "\n";
}


?>



http://nl3.php.net/manual/nl/function.sort.php
 
Willem Jan Z

Willem Jan Z

09/06/2006 01:37:00
Quote Anchor link
KlaasJan, dat is echt het laaste wat je moet doen!
Laat MySQL het werk doen, en zet pas bij de ouput de desbetreffende nullen ervoor. Dmv sprintf()
 
Klaasjan Boven

Klaasjan Boven

09/06/2006 07:51:00
Quote Anchor link
@WJ dat ben ik met je eens

[off]
IK dacht dat ik laat was gister.
[/off]
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
 
Frank -

Frank -

09/06/2006 14:32:00
Quote Anchor link
kima:
Dat had gedaan maar dan kan je er geen 0000 meer voor zetten en dat moet eigelijks wel
Die voorloopnullen zijn opmaak. En opmaak heeft niets te maken met data-opslag.

Kijk eens naar number_format().
 
- Jim  -

- Jim -

09/06/2006 15:59:00
Quote Anchor link
Je kan toch je tabel structuur zo maken...
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
CREATE TABLE `q` (
  `id` int(5) unsigned zerofill NOT NULL default '00000',
  PRIMARY KEY  (`id`)
)
ENGINE=MyISAM DEFAULT CHARSET=latin1;

?>
 
Frank -

Frank -

09/06/2006 16:58:00
Quote Anchor link
@Jim: Je kunt inderdaad wel zerofill gaan toepassen, werkt prima. Maar dan kom je ineens een 0 te kort of wil je er eentje gaan verwijderen. Dan moet je ineens je database gaan zitten aanpassen. En dat terwijl je het alleen maar hebt over opmaak. Een 0 heeft geen enkele functie, je doet het alleen voor het oog. Zet nooit opmaak in je database, dat maakt onderhoud een stuk lastiger.

Zoek met Google eens op 3-tier (mocht er nog niet van hebben gehoord). Je zult dan genoeg hits vinden waar je uitleg kunt vinden over het het hoe en waarom over het scheiden van de data-layer, business-layer en de presentation-layer.
 
- Jim  -

- Jim -

09/06/2006 17:12:00
Quote Anchor link
1) Nog nooit van gehoord, maar ga er zeker naar kijken.
2) begrijp dat je je presentatie nooit in je db moet zetten!
3) Oplossing wordt dan printf of sprintf, zeker....
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$data
= mysql_fetch_array($result);
// 6 voorloopnullen.
echo sprintf('%06d',$data[0]);
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
// 99 voorloopnullen
echo sprintf('%099d',$data[0]);
?>
Gewijzigd op 01/01/1970 01:00:00 door - Jim -
 
Frank -

Frank -

09/06/2006 17:26:00
Quote Anchor link
Hierstaat een hele korte maar duidelijke uitleg over het 3-tier model.
 
Ki ma

ki ma

09/06/2006 18:52:00
Quote Anchor link
wat een gedoe om die nullen doe poei...moeten het nog wel blijven begrijpen maar toch zonder de nullen werkt dit wel
$sql = "SELECT * FROM sierraden ORDER BY id"
met de INT niet te vergeten natuurlijk
thx klaas-jan :)

en al die anderen met hun sugesties natuurlijk.


dat 3-tier is een heel ander programma volgens mij ik probeer een overzicht te maken van alle producten in onze winkel. voor een beetje tijd verdrijf en er mischien later een website aan te linken wie weet aldoende leerd men :p
Gewijzigd op 01/01/1970 01:00:00 door ki ma
 
Frank -

Frank -

09/06/2006 18:56:00
Quote Anchor link
3-tier is geen programma, het is een structuur in een programma/script. Het programma/script kan geschreven zijn in C, C++, Java, PHP, ASP, .NET, etc.
 
Klaasjan Boven

Klaasjan Boven

09/06/2006 20:04:00
Quote Anchor link
Ow ja:

SELECT * graag vervangen door:
SELECT kolom1, kolom2, kolom3

Vaak heb je niet alles nodig en dit gaat een stuk sneller. Bovendien is het ook een goede gewoonte omdat je zo kunt zien wat er in een tabel zit. Bijvoorbeeld

SELECT * FROM users /// Jij haalt gegevens uit de tabel user. Later weet jij echt niet meer wat er in die tabel zit.

Daarom
SELECT user_id, user_naam, user_nick, user_email, user_pass FROM users
is een stuk duidelijker

en de notatie is vaak:
SELECT
user_id,
user_naam,
user_nick,
user_email,
user_pass
FROM
user
WHERE
user_id<10
ORDER BY
user_id
DESC
 
Klaasjan Boven

Klaasjan Boven

09/06/2006 20:06:00
Quote Anchor link
Leuk is dat hij haal mijn spaties weg :(
 



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.