Registreer FAQ Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 31-07-2003, 16:50
Vinzz
Avatar van Vinzz
Vinzz is offline
Weet iemand misschien waar ik een scripje kan vinden? of kent iemand misschien een scriptje dat..:

Dat je in een PHP pagina .. ergens in een tabelletje bijv ... 1 2 3 en heb staan (als "links") .. en als je dan op de 2 klikt dat de siteheader boven veranderd .. en bij 3 weer een andere.. en dat standaard de 1e siteheader tevoorschijnkomt .. deze zijn gewoon in .jpg formaat

ik ben benieuwd

Laatst gewijzigd op 31-07-2003 om 17:41.
Met citaat reageren
Advertentie
Oud 31-07-2003, 16:55
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Siteheader?
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 17:32
Vinzz
Avatar van Vinzz
Vinzz is offline
uhm ja ..misschien niet helemaal de juiste benaming.. ik bedoel gewoon een plaatje bovenaan website met titel
Met citaat reageren
Oud 31-07-2003, 17:42
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Nou als ie al verder in de HTML is kan hij niets meer veranderen, dat is logisch natuurlijk.

Wat jij wilt kan niet serverside, maar wel clientside. Javascript imageflip bijvoorbeeld.

Of wil je gewoon een nieuwe pagina openen? Dan kun je dat simpel met een variabele doen natuurlijk. Link 1 = index.php?id=1 en dan id uitlezen en aan de hand daarvan de juiste image geven.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 17:58
-niels-
Avatar van -niels-
-niels- is offline
Nah je koppelt de headers aan je onderdelen (in de database)
en als je dan een onderdeel inlaad... (select * from onderdeel where id=1 ofzo) dan lees je dan ook die header uit, en zorg je dat die tussen de img tags wordt ingeladen...

je zou evt ook per onderdeel een andere stylesheet aan kunnen maken, dan hoef je ze ook niet in de DB te zetten... alleen een style te koppelen..
__________________
If you dont like oral sex, keep your mouth shut... I'll spray my love all over your face.... ->PAS OP IK HIJACK JE NICK<- • Mr. Mysteria •
Met citaat reageren
Oud 31-07-2003, 18:04
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Als je met sessions werkt kun je die info ook in $_SESSION opslaan, houd je de URL vrij van vars, vind ik wel zo netjes.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 19:24
Bobpje
Avatar van Bobpje
Bobpje is offline
Met PHP wordt het idd serverside, dus zoiets:
PHP-code:
<?php
$header 
$_GET['id'];
$query "SELECT title, image FROM table WHERE id = '" $header "'";
$result mysql_query($query);
$row mysql_fetch_array($result);
echo 
"<html><head><title>" $row['title'] . "</title></head><body>";
echo 
"<img src=\"" $row['image'] . "\">";
echo 
"</body></html>";
?>
oid
__________________
Life is like a box of chocolates..
Met citaat reageren
Oud 31-07-2003, 20:02
-niels-
Avatar van -niels-
-niels- is offline
Citaat:
Bobpje schreef op 31-07-2003 @ 20:24:
Met PHP wordt het idd serverside, dus zoiets:
PHP-code:
<?php
$header 
$_GET['id'];
$query "SELECT title, image FROM table WHERE id = '" $header "'";
$result mysql_query($query);
$row mysql_fetch_array($result);
echo 
"<html><head><title>" $row['title'] . "</title></head><body>";
echo 
"<img src=\"" $row['image'] . "\">";
echo 
"</body></html>";
?>
oid
netjes
__________________
If you dont like oral sex, keep your mouth shut... I'll spray my love all over your face.... ->PAS OP IK HIJACK JE NICK<- • Mr. Mysteria •
Met citaat reageren
Oud 31-07-2003, 23:14
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Wat nou netjes!

Kijk eens goed:


$header = $_GET['id'];

$query = "SELECT title, image FROM table WHERE id = '" . $header . "'";

Noem je dat netjes? De ruwe user input in een query stoppen?! Hierdoor kun je keihard een DB exploiten.

$header = (int)$_GET['id']; gebruiken, of:
$header = mysql_escape_string($_GET['id']);
als het om een string gaat.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 23:18
-niels-
Avatar van -niels-
-niels- is offline
Citaat:
Enlightenment schreef op 01-08-2003 @ 00:14:
Wat nou netjes!

Kijk eens goed:


$header = $_GET['id'];

$query = "SELECT title, image FROM table WHERE id = '" . $header . "'";

Noem je dat netjes? De ruwe user input in een query stoppen?! Hierdoor kun je keihard een DB exploiten.

$header = (int)$_GET['id']; gebruiken, of:
$header = mysql_escape_string($_GET['id']);
als het om een string gaat.
als voorbeeld... tjeas...
__________________
If you dont like oral sex, keep your mouth shut... I'll spray my love all over your face.... ->PAS OP IK HIJACK JE NICK<- • Mr. Mysteria •
Met citaat reageren
Oud 31-07-2003, 23:20
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
En als je maar 3 siteheaders hebt, gewoon:

URL = /index.php?header=1

PHP-code:
if ($_GET['header'] == 1)
{
 
$title 'BLah';
 
$img '/images/header1.jpg';
}
elseif (
$_GET['header'] == 2)
{
 
$title 'Puuh';
 
$img '/images/header2.jpg';
}
elseif (
$_GET['header'] == 3)
{
 
$title 'Boooh!';
 
$img '/images/header3.jpg';
}
else
 
// geen header
 
echo('geen header');

echo(
'<html><head><title>'.$title.'</title></head><body>');
echo(
'<img src="'.$img.'" alt="">'); 
Zoiets, heb je geen DB voor nodig.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 23:21
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Citaat:
-niels- schreef op 01-08-2003 @ 00:18:
als voorbeeld... tjeas...
Slecht voorbeeld dan, want hij zou het zo kunnen gebruiken.

Het overtreedt de nummer 1 regel die je als PHP coder moet onthouden:

Do not trust user input
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 31-07-2003, 23:38
-niels-
Avatar van -niels-
-niels- is offline
Citaat:
Enlightenment schreef op 01-08-2003 @ 00:21:
Slecht voorbeeld dan, want hij zou het zo kunnen gebruiken.

Het overtreedt de nummer 1 regel die je als PHP coder moet onthouden:

Do not trust user input
Zo... en sinds wanneer worden voorbeelden die niet voldoen afgekeurd?
Bij bijna elke PHP vraag wordt doorverwezen naar andere site, en als die dan met vragen over die scripts komen krijg je, zoek een beter script...

nou helpt iemand een keer... geeft een VOORBEELD (niet, "gebruik dit letterlijk") en dan is 't ook niet goed...
zullen we voortaan de PHP vragen maar verbieden.... tjeas... zeikert
__________________
If you dont like oral sex, keep your mouth shut... I'll spray my love all over your face.... ->PAS OP IK HIJACK JE NICK<- • Mr. Mysteria •
Met citaat reageren
Oud 01-08-2003, 06:15
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Omdat ik een voorbeeld korrigeer, waarbij anders iemand full access tot de database kan krijgen (een 100% lek dus) en ik code geef hoe het dan wel veilig kan (en zelfs zonder database at all), ben ik een zeikerd?

__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 01-08-2003, 11:44
shao-kahn
Avatar van shao-kahn
shao-kahn is offline
ja
__________________
pim heeft het ook zo gewild
Met citaat reageren
Oud 01-08-2003, 12:20
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
jzs, Enlightenment vult gewoon de script aan, ik bedoel als ik zon vraag stel, en iemand komt met een antwoord, dan zou ik m bijna zeker zo gebruiken en er verder niet bij nadenken. Ze wijst de topicstarter erop dat hij dat neit moet doen, en dan wordt ze nog afgezeken als zeikerd .

@niels: stel dat jij de topicstarter was, en je kreeg zoiets onder je neus gedrukt, zou jij het dan niet bijna (zoniet helemaal) letterlijk gebruiken. *neeeeeeeeeeuh, zal wel niet he*
Met citaat reageren
Oud 01-08-2003, 16:21
Bobpje
Avatar van Bobpje
Bobpje is offline
Dude, ik geef toch alleen ff aan hoe het systeempje opgebouwd kan worden...

Naja kzeg al nix meer hoor
__________________
Life is like a box of chocolates..
Met citaat reageren
Oud 01-08-2003, 16:30
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Citaat:
Bobpje schreef op 01-08-2003 @ 17:21:
Dude, ik geef toch alleen ff aan hoe het systeempje opgebouwd kan worden...

Naja kzeg al nix meer hoor
Ik heb niks tegen jou hoor.

Als ik een voorbeeld post, waarin toch een pikant foutje zit, vind ik het goed als anderen de topicstarter daarop wijzen.

Niemand weet alles namelijk, daarom is het fijn dat mensen op een fora elkaar kunnen aanvullen.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 01-08-2003, 19:25
TouchOfDarkness
Avatar van TouchOfDarkness
TouchOfDarkness is offline
Citaat:
Enlightenment schreef op 01-08-2003 @ 00:14:
Wat nou netjes!

Kijk eens goed:


$header = $_GET['id'];

$query = "SELECT title, image FROM table WHERE id = '" . $header . "'";

Noem je dat netjes? De ruwe user input in een query stoppen?! Hierdoor kun je keihard een DB exploiten.

$header = (int)$_GET['id']; gebruiken, of:
$header = mysql_escape_string($_GET['id']);
als het om een string gaat.
Je hebt wel gelijk, maar in een standaard PHP distributie staat de magic_quotes_gpc directive op On, dus daarmee worden GET variabelen ook al ge-escaped.
__________________
He can't hear the sirens, cause silence is the greatest sleep of them all.
Met citaat reageren
Oud 01-08-2003, 20:58
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Daar heb ik ook wat over gelezen ja. Maar al weet je zeker dat die optie aanstaat, stel je zet hem op de site van je provider of ergens anders, kun je niet van uit gaan dat die optie daar ook aanstaat.

Ik vind het een goede gewoonte dat je die jezelf altijd aanleert, net zoals je je gordel altijd omdoet.

Het is een manier van denken, waardoor je veel veiligere scripts maakt.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar


Alle tijden zijn GMT +1. Het is nu 21:20.