optellen van velden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Dick Tol

Dick Tol

21/01/2014 20:22:54
Quote Anchor link
In mijn SELECT wil ik de velden sp1 en sp2 van de rij die het laatst aan de database is toegevoegd (leerlingnummer2) bij elkaar optellen. Met SUM kan ik niet werken, want dan tel ik een kolom en dat wil ik niet.

Daarom probeer ik dit met het optellen van de twee velden tussen haakjes: SELECT (sp1+sp2).

Ik krijg geen foutmelding, maar hij telt niet op.

Hoe kan ik dit het beste aanpakken? Hieronder volgt een deel van de code.


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
16
17
18
19
<?php
$sql_query
= "SELECT leerlingnummer2, (sp1+sp2) FROM algemeen150 WHERE leerlingnummer2='".$_POST['leerlingnummer2']."'" ;
    $result = mysql_query($sql_query) or die(mysql_error());
    if(mysql_num_rows($result) > 0 ){
        echo "Met deze naam of dit leerlingnummer is al een beoordeling geven!<br/>";
            }


    //***gebruikersnaam bestaat al***
    else{
        $sql_aanmelding = "INSERT INTO `algemeen150` (`leerlingnummer2`, `sp1`, `sp2`) VALUES ('" . $_POST['leerlingnummer2'] . "', '". $_POST['sp1']. "', '". $_POST['sp2']. "')";
        $sql_aanmelding;
        $verzenden = mysql_query($sql_aanmelding);
        echo "Beste ".$_POST['leerlingnummer2'].", hartelijk dank voor het beantwoorden van de vragen.<p> Hieronder volgen de punten. Kopieer deze pagina met Ctrl-a, Ctrl-c en plak hem met

Ctrl-v in Word, want je krijgt hem maar 1 keer te zien.

<p><?php<br>Totaal "
.$_POST['(sp1+sp2)']."
<p><?php<br>Spelling 1 score "
.$_POST['sp1']."
<p><?php<br>Spelling 2 score "
.$_POST['sp2']."[/code]
Gewijzigd op 21/01/2014 20:46:54 door Wouter J
 
PHP hulp

PHP hulp

20/04/2024 16:19:51
 
Wouter J

Wouter J

21/01/2014 20:47:00
Quote Anchor link
[code]-tags geplaatst. Gelieve de volgende keer code tussen [code] en [/code] zetten. Alvast bedankt![/modedit]
 
Erwin H

Erwin H

21/01/2014 21:02:02
Quote Anchor link
Dus je voert een query uit en probeert de resultaten van die query dan uit de POST array te halen....?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<p><?php<br>Totaal ".$_POST['(sp1+sp2)']."
?>


Misschien beter om dan je resultaten uit je database te fetchen en daarvandaan proberen naar de browser te sturen. Verder is het ook makkelijker om even een alias aan een samengestelde virtuele kolom te geven, dan kan je het makkelijker benaderen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
SELECT leerlingnummer2, sp1 + sp2 AS totaal
FROM...
 
Dick Tol

Dick Tol

21/01/2014 21:21:47
Quote Anchor link
Ik heb de sp1 + sp2 AS totaal in de SELECT gezet en met een POST eruit proberen te halen, maar ik krijg geen getal te zien (ook geen foutmelding overigens).

Het heeft toch geen zin om totaal in de INSERT of POST te zetten?

<p>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php<br>Totaal ".$_POST['totaal']."
Gewijzigd op 21/01/2014 21:23:24 door Dick Tol
 
Erwin H

Erwin H

21/01/2014 21:36:55
Quote Anchor link
Hoeveel queries heb je al gebouwd in php? Want als je verwacht dat de resultaten van een query in de POST array terecht komen ontbreekt er toch echt een stukje kennis vrees ik...
 
Dick Tol

Dick Tol

21/01/2014 22:31:55
Quote Anchor link
Nee, dat denk ik niet. Daarom plaats ik hem er ook niet in, maar als de echo uitblijft, ga je toch proberen te vinden wat de oplossing is.

De volgende opdracht komt ook op het scherm te staan.Daarom zoek ik naar een vergelijkbare code.

Moet ik in de database ook een veld totaal aanmaken?



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php<br>Spelling 1 score ".$_POST['sp1']." </code>
Gewijzigd op 21/01/2014 22:43:38 door Dick Tol
 
Erwin H

Erwin H

21/01/2014 22:43:06
Quote Anchor link
In de eerste plaats heb je een form (blijkbaar) waarmee gegevens naar je script worden gepost. Die gegevens komen in de $_POST array terecht. Als jij dus een input in dat form hebt met een name attribuut 'sp1' dan is het niet vreemd dat die tweede echo wel werkt. Maar die gegevens komen dan dus NIET uit de database, maar rechtstreeks uit je geposte form.

Daarnaast heb je een query gedraaid en de resultaten uit die query wil je gaan gebruiken. Om dat te kunnen doen moet je echter een paar stappen doorlopen.
1) query definieren
2) query uitvoeren
3) resultaten fetchen
4) gegevens echoen
1 en 2 heb je gedaan, maar 3 doe je niet. Stap 4 gaat je dan ook niet lukken.

Hier is een aardige tutorial over hoe data uit database te halen, inclusief foutafhandeling:
http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/voorbeeld-1-het-ophalen-van-gegevens/1931/
(check regel 52/53 hoe je de gegevens fetcht)
Gewijzigd op 21/01/2014 22:43:24 door Erwin H
 



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.