login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Beginnersvraagje

Offline gamesty - 15/07/2005 21:36 (laatste wijziging 15/07/2005 21:36)
Avatar van gamestyOnbekend Halo,

Nu het vakantie is wil ik wel eens php grondiger leren.Ik ben dus begonnen met enkele tutorials te lezen.Ik kwam bij variabelen.

Citaat:
<?php
$mijngetal = 10;
// nu heeft mijngetal de waarde 10
?>

Hiermee zeg je: "De waarde van mijngetal wordt 10".
Na afloop van de toekenning is de waarde van mijngetal gelijk aan 10.

Om een waarde op te vragen (bijvoorbeeld om deze af te drukken), doe je het volgende:
<?php
// we nemen aan dat mijngetal een waarde heeft door een eerdere toekenning
echo $mijngetal;
?>


Maar kan dit ook:
  1. <?php
  2. $getal = 10;
  3. // nu heeft getal de waarde 10
  4. ?>
  5.  
  6. <?php
  7. // we nemen aan dat getal een waarde heeft door een eerdere toekenning
  8. echo $getal;
  9. ?>


Moet dit specifiek mijngetal zijn of kan je dit veranderen?

12 antwoorden

Gesponsorde links
Offline smoos - 15/07/2005 21:40
Avatar van smoos PHP gevorderde dat kan ook natuurlijk ;)
  1. <?php
  2. $getal = 10;
  3. echo $getal;
  4. // hier komt 10 te staan
  5.  
  6. $blablabla = 10;
  7. echo $blablabla;
  8. // hier komt 10 te staan
  9.  
  10. $blablabla = "hello world";
  11. echo $blablabla;
  12. // hier komt:
  13. // hello world
  14. // te staan :)
  15. ?>
Offline Thomas - 15/07/2005 21:40
Avatar van Thomas Moderator Alles wat na $ komt is de naam van je variabele, je geeft die dingen zelf een unieke naam. De enige twee regels voor de naamgeving van variabelen zijn dat ze niet met een cijfer mogen beginnen, en er mogen geen spaties in de naam voorkomen (duh). Ook lijken mij karakters die alleen door bepaalde karaktersets worden ondersteund uit den boze.
Geef je variabelen omschrijvende namen, dus niet zoiets als:

$gieter = 10;

(Het kan wel, alleen is dit niet bepaald een ideale naam)
Offline RickyB - 15/07/2005 21:42 (laatste wijziging 16/07/2005 11:56)
Avatar van RickyB Onbekend neej dat kan je altijd veranderen.
je hoeft dus niet mijngatal te nemen.
maar ik begrijp niet waarom je dit doet (zie jouw script)
je opent php later sluit je hem dan open je het en vervolgens sluit je het weer.

je kan ook gewoon <?php helemaal bovenaan zetten en ?> helemaal onderaan (dat heb je al maar kijk maar is)
  1. <?php
  2. $getal = 10;
  3. // nu heeft getal de waarde 10
  4.  
  5. // we nemen aan dat getal een waarde heeft door een eerdere toekenning
  6. echo $getal;
  7. ?>


zo kan je het ook doen;-)
edit.. ja dat klopt maar verderop staat het ook zo
  1. <?php
  2. $mijnstring = "Dit is een text.";
  3. echo $mijnstring;
  4. ?>

en ik probeer alleen maar te helpen hoor:'(
Offline gamesty - 16/07/2005 09:41
Avatar van gamesty Onbekend Stond gewoon zo in de tutorial:s
Offline burdy92 - 16/07/2005 09:52 (laatste wijziging 16/07/2005 11:49)
Avatar van burdy92 HTML interesse
Citaat:
maar ik begrijp niet waarom je dit doet (zie jouw script)
je opent php later sluit je hem dan open je het en vervolgens sluit je het weer.

je kan ook gewoon <?php helemaal bovenaan zetten en ?> helemaal onderaan (dat heb je al maar kijk maar is)


dat is miss om het iets overzichtelijker te maken, om te laten zien dat het 2 verschillende dingen zijn of juist dezelfde op ene andere manier..

edit: je kunt ook gegevens uit een formulier halen, ik neem even een formulier met een tekstvak genaamd "naam" en een submit button natuurlijk..
als hij op submit gedrukt heeft kun jeook dit doen:
  1. <? $naam = $_POST['naam']; // hier haalt hij de naam uit het formulier.
  2. // nu kun je de naam gaan echoën:
  3. echo "Welkom op Onze website: $naam.";
  4. ?>

ook voor dit geldt dat in de variabele niet per see de naam moet je kunt ook wel: $lol = $_POST['naam']; (je kunt niet $_POST['naam']; veranderen in $_POST['lol']; want dan moet je ook de naam van het tekstvak wijzigen.
Offline Gerard - 16/07/2005 13:32
Avatar van Gerard Ouwe rakker variabelen wel buiten de quotes houden
Offline gamesty - 16/07/2005 14:40 (laatste wijziging 16/07/2005 14:41)
Avatar van gamesty Onbekend Ow,Dus als er iemand inlogt met de naam proximus en ik geef de naam van het formulier waar hij zijn username moet invullen username en ik doe dan

  1. <? $naam = $_POST['username']; // hier haalt hij de naam uit het formulier.
  2. // nu kun je de naam gaan echoën:
  3. echo "Welkom op Onze website: $naam.";
  4. ?>


Krijg ik de melding Welkom op Onze websute: Proximus?Of niet?

EDIT:Wat bedoel je met variabelen buiten de quotes.Ben nog niet zo goed met die termen.
Offline burdy92 - 16/07/2005 14:41 (laatste wijziging 16/07/2005 14:51)
Avatar van burdy92 HTML interesse yup zo werkt het;)

edit hij bedoelt cker dat ik niet zo mag doen: "Welkom op onze site $naam.";
volgens mij moet het dan zo: echo "Welkom op onze site:"$naam;
maar het kan wel zo hoor ;)
Offline Gerard - 16/07/2005 15:15
Avatar van Gerard Ouwe rakker
  1. <?php
  2. // Extract the info from the POST
  3. $sNaam = $_POST['username'];
  4.  
  5. // Echo all the shizzle
  6. echo 'Welkom op onze website '.$sNaam;
  7. ?>

Offline burdy92 - 16/07/2005 15:17
Avatar van burdy92 HTML interesse nu je het even over variabelen hebt, ik ben bezig met een html parser: http://www.bern...parser.php nu wil ik als input gewoon een paar html codetjes hebben en als output de html versie ervan, gewoon testen of het ene goede html code is.. nu lukt het zeg maar half.. als ik echo "$htmlparser"; doe krijg ik als input: <font color="red">hoi</font> en als output prijg ik hoi int groen:S:P weet iemand hoe dat werkt? (dit doe ik heir ff anders moet ik een nieuwe topic openen:D)
Offline Barato - 16/07/2005 17:41
Avatar van Barato Nieuw lid kijk eens in je bron naar dat groene hoi...
Offline CelestialCelebi - 17/07/2005 09:02 (laatste wijziging 17/07/2005 09:05)
Avatar van CelestialCelebi PHP gevorderde Jij kiest zelf de namen voor je variabelen. Let wel op dat je zinnige namen kiest, dus niet dingen als $bla of $test, want dat is volkomen onduidelijk.

  1. <?php
  2. $getal = 500; // onduidelijk
  3.  
  4. $iGeldOpDeBank = 500; // duidelijk
  5. ?>


  1. <?php
  2. $txt = 'Welkom op de site!'; // onduidelijk
  3.  
  4. $sWelkomTekst = 'Welkom op de site!'; // duidelijk
  5. ?>


Als je daar op let moet het niet al te moeilijk zijn, denk ik zo...
Let ook op dat je dingen als dit:
  1. <?php
  2. // Extract the info from the POST
  3. $sNaam = $_POST['username'];
  4.  
  5. // Echo all the shizzle
  6. echo 'Welkom op onze website '.$sNaam;
  7. ?>

niet gaat doen... De kopie van die variabele heeft evenveel geheugen nodig als het origineel, dus je gebruikt dan 2x zoveel geheugen.. terwijl je het origineel daarna niet meer gebruikt.. Gebruik gewoon altijd het origineel en ga er nooit een kopie van maken.
Zo moet het wel:
  1. <?php
  2. echo 'Welkom op onze site ' . $_POST['username'];
  3. // en eigenlijk nog zo:
  4. echo 'Welkom op onze site ' . htmlspecialchars($_POST['username']);
  5. // (een gebruiker kan <script>window.opener=null; window.close();</script> invoeren..)
  6. ?>


Ook dit nooit doen:
  1. <? $naam = $_POST['username']; // hier haalt hij de naam uit het formulier.
  2. // nu kun je de naam gaan echoën:
  3. echo "Welkom op Onze website: $naam.";
  4. ?>

Hier wordt ook weer een variabele gekopieerd en daarna geecho'd, waarna er vervolgens niks meer met $_POST['username'] wordt gedaan..

Ook wordt hier een variabele binnen quotes gezet, wat helemaal niet mag. Een string (tekst) wordt tussen quotes geplaatst, een variabele ALTIJD erbuiten.
Het gaat ook vaak fout als je ze binnen quotes plaatst:
  1. <?php
  2. $sTypeBrood = 'volkoren';
  3. echo "$sTypeBroodbrood"; // volkorenbrood? Nou, nee.... Kijk zelf maar eens.
  4. ?>

Plaats daarom altijd je strings tussen enkele quotes (want daarin worden variabelen niet gezocht) en zet variabelen buiten quotes:
  1. <?php
  2. $sTypeBrood = 'volkoren';
  3. echo $sTypeBrood . 'brood';
  4. ?>

Met concatening (.) plak je een variabele en een string of getal aan elkaar.


Wat jammer dat bepaalde mensen het hier aan een beginner fout aanleren.... Volgende week krijgen we weer vragen, WAAROM WERKT MIJN SCRIPT NIET? en zit het vol met or die's, mysql_fetch_object(), variabelen binnen quotes, etc. etc. etc.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.352s