Cronjob script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

01/01/2007 12:34:00
Quote Anchor link
Ik zal even screenshots maken van de tabellen.....
 
PHP hulp

PHP hulp

19/11/2024 15:46:07
 
- SanThe -

- SanThe -

01/01/2007 12:36:00
Quote Anchor link
SanThe schreef op 01.01.2007 12:27:
Dan bestaat $begroting_id niet.

Ik bedoel dus dat die var leeg is of niet geset.
 

01/01/2007 12:40:00
Quote Anchor link
Afbeelding

Uit deze tabel moet hij het begroting_id halen en het begroting_bedrag.

Afbeelding

In deze tabel moeten de gegevens komen te staan.
Gewijzigd op 01/01/1970 01:00:00 door
 
- SanThe -

- SanThe -

01/01/2007 12:50:00
Quote Anchor link
SanThe schreef op 01.01.2007 12:36:
SanThe schreef op 01.01.2007 12:27:
Dan bestaat $begroting_id niet.

Ik bedoel dus dat die var leeg is of niet geset.
 

01/01/2007 13:00:00
Quote Anchor link
Ja, ik had het wel gelezen maar ik snapte het niet goed.

Ik heb het nu zo gedaan en de gegevens worden er nu goed in gezet.

Alleen....hij doet het maar 1 keer, dus hij pakt de bovenste regel.

Ik heb er al een while lus omheen gezet maar dan krijg ik een foutmelding.
Hoe kan ik hem alles laten herhalen tot hij alle gegevens uit de tabel heeft gehaald.

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
20
21
22
23
24
25
26
27
<?php
include("../budget/inloggen.php");
//maak verbinding met de database
$connection = mysql_connect ($hostname,$user,$password) or die ( "Sorry maar ik kan geen contact maken met de database, probeer het later opnieuw of ververs uw browser.");
$db = mysql_select_db ($database, $connection) or die ("Sorry, maar ik kan de database niet openen.");

$query = "SELECT begroting_bedrag,begroting_id
            FROM begroting
            WHERE budget_id = 2"
;
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);

$query = "INSERT INTO uitgaven (
        uitgave_naam,
        uitgave_datum,
        uitgave_tekst,
        uitgave_bedrag,
        begroting_id
        ) VALUES (
        'Storting',
        NOW(),
        'Maandelijkse storting',
        '"
. $row['begroting_bedrag'] . "',
        '"
. $row['begroting_id'] . "'
        )"
;
$result = mysql_query($query) or die(mysql_error());
?>
 
- SanThe -

- SanThe -

01/01/2007 13:05:00
Quote Anchor link
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
20
21
22
23
24
25
26
27
28
29
<?php
include("../budget/inloggen.php");
//maak verbinding met de database
$connection = mysql_connect ($hostname,$user,$password) or die ( "Sorry maar ik kan geen contact maken met de database, probeer het later opnieuw of ververs uw browser.");
$db = mysql_select_db ($database, $connection) or die ("Sorry, maar ik kan de database niet openen.");

$query = "SELECT begroting_bedrag,begroting_id
            FROM begroting
            WHERE budget_id = 2"
;
$result_for_while = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result_for_while))
{

    $query = "INSERT INTO uitgaven (
        uitgave_naam,
        uitgave_datum,
        uitgave_tekst,
        uitgave_bedrag,
        begroting_id
        ) VALUES (
        'Storting',
        NOW(),
        'Maandelijkse storting',
        '"
. $row['begroting_bedrag'] . "',
        '"
. $row['begroting_id'] . "'
        )"
;
    $result = mysql_query($query) or die(mysql_error());
}

?>
 

01/01/2007 13:11:00
Quote Anchor link
Vervelend dat ik nog niet goed genoeg een script kan schrijven.
Ik had er dus net iets te veel ingezet.

Het werkt SanThe, je bent het nieuwe jaar weer goed begonnen.

Hopelijk kan ik nu weer vooruit en anders......ach ja, dan zie je me hier wel weer :)

Bedankt,

Elsy
 
Willem vp

Willem vp

01/01/2007 14:28:00
Quote Anchor link
Als we teruggaan naar de originele query: daar werd een SELECT gebruikt om een van de values in de insert-query te setten. Dat kan voor zover ik weet niet, maar je kan wel een SELECT gebruiken als vervanging van de VALUES in je query. Dit zou dus ook moeten werken:
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
<?php
    $query
= "INSERT INTO uitgaven (
        uitgave_naam,
        uitgave_datum,
        uitgave_tekst,
        uitgave_bedrag,
        begroting_id
        )
        SELECT
           'Storting',
           NOW(),
           'Maandelijkse storting',
           begroting_bedrag,
           begroting_id
        FROM begroting
        WHERE budget_id = 2"
;
?>


Hier worden alle resultaten van je SELECT gebruikt als invoer voor je INSERT.
Dat scheelt je een extra query en een while-loop.
 

Pagina: « vorige 1 2



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.