abonnement Unibet Coolblue Bitvavo
pi_69180909
quote:
Op dinsdag 19 mei 2009 07:29 schreef Pizzahut het volgende:
Goed mijn query:
[ code verwijderd ]
1SELECT id, distinct datum, titel FROM nieuws WHERE actief = 1 GROUP BY datum ORDER BY datum DESC


ik zit te denken als 2 nieuws dingen op 1 dag geplaatst hebt die worden dan ook gefilterd.
dus een herhalende query zou het moeten doen
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql 
"SELECT distinct datum FROM nieuws";

$uitvoer mysql_query($sql); 
$maand mysql_assoc_fetch($uitvoer)
for(
$i 012;$i++)
{
        foreach(
$maand == $maand){
        
$squuel "SELECT id,datum,titel from nieuws where actief = 1 and datum = $maand
}
}
?>


iets in deze richting geen tijd om het goed uit te werken.
mijn advies mee blijven klooien en precies weten wat je wil doen, uitschrijven en het uitwerken
Redacted
  dinsdag 19 mei 2009 @ 12:03:34 #62
74276 saaw
fight harder or walk away
pi_69184277
Ik ben voor school bezig met een kalender in PHP waar je data kunt toevoegen.
Heb ondertussen wel iets bij elkaar dat de maand goed berekent en een textarea aanmaakt maar hoe ik de tekst die je daar in vult ook daadwerkelijk in de database krijgt, die deze bij herladen ook weer uitleest, is mij een raadsel.

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<html>
  <head>
      <title>vrienden agenda</title>
    <link rel="stylesheet" type="text/css" href="kalender.css">
  </head>
  <body>
  
<?
if(isset($_POST['hmaand']))
{
    $maand = $_POST['hmaand']; // Maand dat wordt ingegeven
    $jaar = $_POST['hjaar']; // Jaar dat wordt ingegeven
}
else
{
    $maand = date('m'); // Maand NU
    $jaar  = date('Y'); // Jaar NU
}

    if(isset($_POST['volgende']))
    {
        $maand++; // Volgende Maand
        if($maand == 13) // Als maand 13 is dan +1 jaar
        {
            $maand = 1;
            $jaar++; 
        }
    }

if(isset($_POST['vorige']))
{
    $maand--; // Vorige Maand
    if($maand == 0) // Als maand 0 is dan -1 jaar
    {
        $maand = 12;
        $jaar--;
    }
}

    if(isset($_POST['naarvandaag'])) // Naar de Juiste maand gaan
    {
        $maand = date('m');
        $jaar  = date('Y');
    }

$maanden = array (1 => "Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"); // Maanden
$datum   = mktime(0, 0, 0, $maand, 1, $jaar); // functie time() bereken
$datum   = $maanden[date('n', $datum)].' '.date('Y', $datum); // Nederlandse Maand Jaar
$srv     = $_SERVER['PHP_SELF']; // Link naar waar hij moet gaan in ons geval deze pagina
?>


<form action="<? echo $srv; ?>" method="post">
<table id="navigatie">
  <tr>
    <td><input type="submit" name="vorige" value="<<" /></td>
    <td></td>
    <td><? echo $datum; ?></td>
    <td><input type="submit" name="naarvandaag" value="Nu" /></td>
    <td><input type="submit" name="volgende" value=">>" /></td>
  </tr>
</table>
<input type="hidden" name="hmaand" value="<? echo $maand; ?>"/>
<input type="hidden" name="hjaar" value="<? echo $jaar; ?>"/>
</form>

<?
function eersteDagInMaand($maand, $jaar) { // Functie Eerste Dag In De Maand
    $eerste = mktime(0, 0, 0, $maand, 0, $jaar);
    $edag = date('w', $eerste);
    return $edag;
}

function dagenInMaand($maand, $jaar) { // Functie totaal aantal dagen in de maand
    $laatste = mktime(0, 0, 0, $maand, 1, $jaar);
    $ldag = date('t', $laatste);
    return $ldag;
}

function restDagen($edag, $ldag) { // De rest van de dagen de lege vakjes berkenen
    $rest = ( $edag + $ldag ) % 7;
    if($rest != 0)
    {
        $rest = 7 - $rest;
    }
    return $rest;
}

function printMaand($maand, $jaar) // Maand laten zien
{
    $edag = eersteDagInMaand($maand, $jaar);
    $ldag = dagenInMaand($maand, $jaar);
    $rest = restDagen($edag, $ldag);
    $vandaag = mktime(0,0,0,date('n',time()),date('d', time()), date('Y', time()));
    $weekdag = array('Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za', 'Zo');
    
    echo "\n".'<table id="agenda"><tr>';
    foreach($weekdag as $dag)
    {
        echo '<td class="dagen">'.$dag.'</td>';
    }
    echo '</tr><tr>'."\n";
    for($i = 0; $i < ( $edag + $ldag + $rest ); $i++)
    {
        if($i < $edag || $i >= ( $edag + $ldag ))
        {
            echo '<td> </td>'."\n";
        }
        else
        {
            if(date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar)
            {
                echo '<td bgcolor="#651a9a">'. ($i -($edag - 1)) .'</td>'."\n";
            }
            else
            {
               echo '<td>'. ($i -($edag - 1)) . "<textarea id='nieuwetekst'" . ($i -($edag - 1)) . "> tekstblablabla </textarea>" . '</td>'."\n";
            }
            if(($i + 1) % 7 == 0)
            {
                echo '</tr><tr>'."\n";
            }
        }
    }
    echo '</tr></table>';
}
printMaand( $maand, $jaar );
?>
  </body>
</html>


Zie hier voor de css en hier voor hoe het er tot nu toe uitziet.
Hopelijk kunnen jullie mij helpen.
an urge to help mankind overcomes me
pi_69184708
quote:
Op dinsdag 19 mei 2009 12:03 schreef saaw het volgende:
Ik ben voor school bezig met een kalender in PHP waar je data kunt toevoegen.
Heb ondertussen wel iets bij elkaar dat de maand goed berekent en een textarea aanmaakt maar hoe ik de tekst die je daar in vult ook daadwerkelijk in de database krijgt, die deze bij herladen ook weer uitleest, is mij een raadsel.
[ code verwijderd ]

Zie hier voor de css en hier voor hoe het er tot nu toe uitziet.
Hopelijk kunnen jullie mij helpen.
Je probleem ligt dus bij het database-ding?
Voorbeeld: maak een link met "toevoegen"
Bijvoorbeeld een button.
Als er op geklikt wordt topon je een venster met invoervelden. Naam, omschrijving, jaar, maand, dag, uur, minuut. whatever.
Als de gebruiker op "opslaan" klikt vang je de gegevens af en stop je die in een database
Weet je iets van mysql?
  dinsdag 19 mei 2009 @ 12:23:04 #64
74276 saaw
fight harder or walk away
pi_69184843
quote:
Op dinsdag 19 mei 2009 12:18 schreef beerten het volgende:

[..]

Je probleem ligt dus bij het database-ding?
Voorbeeld: maak een link met "toevoegen"
Bijvoorbeeld een button.
Als er op geklikt wordt topon je een venster met invoervelden. Naam, omschrijving, jaar, maand, dag, uur, minuut. whatever.
Als de gebruiker op "opslaan" klikt vang je de gegevens af en stop je die in een database
Weet je iets van mysql?
ja ik zie voor me dat die textarea's van nu klikbaar zijn zodat je kan typen [is nu ook al het geval] en dan een submit knop oid zodat het idd opgeslagen word in de database. alleen tekst, geen naam of andere data.

ik weet vrij weinig van mysql, dat is het hele probleem

denk dat er een database moet komen met een veldje voor de datum en een voor de tekst.
veel verder dan dat gaat mijn gedachtengang nog niet.


ik google me suf maar veel code's die ik tegenkom zijn onwijs ingewikkeld en dat is volgens mij helemaal niet nodig.
alle hulp is meer dan welkom. kan eventueel ook via mail oid, wil ook weer niet het hele topic volspammen

[ Bericht 4% gewijzigd door saaw op 19-05-2009 12:34:00 ]
an urge to help mankind overcomes me
pi_69191088
Mysql moet je dan wel ff mee leren werken ;-)
maar als je deze agenda geschreven hebt moet dat ook wel lukken.
Hier een opzetje.

Het toevoegen doe je door de hele maand te posten via een formulier (html), geef onder elke textarea een hidden field met id en een met de datum mee.

Die datum moet mee de database in, anders kan je het er later niet uithalen, je weet immers niet meer welke tekst bij welke datum hoort.

na de submit loop je door de post data heen en insert je die in je database.

Bij de dagen aanmaken selecteer je de info uit je database en echo je die in de dag.

http://dev.mysql.com/doc/refman/5.1/en/insert.html
http://dev.mysql.com/doc/refman/5.1/en/select.html
  dinsdag 19 mei 2009 @ 15:35:34 #66
74276 saaw
fight harder or walk away
pi_69191149
het probleem met de data in de juiste dag echo'en is dus dat het niet een tabel is met daadwerkelijk de 31 dagen van de maand erin, zie code hierboven, maar een soort loopje die uitrekent hoeveel dagen er nodig zijn en zoveel cellen aanmaakt.

wel bedankt voor de beknopte uitleg en handige linkjes!
an urge to help mankind overcomes me
pi_69192075
Ja maar je weet de dag, de maand en het jaar, die zet je om naar een unix timestamp

Btw, ik ben ook maar een php-hobby-prutser :d
Chandler, WyriHaximus, Light en lassie hebben vast veel betere ideen
pi_69193397
quote:
Op dinsdag 19 mei 2009 07:29 schreef Pizzahut het volgende:
Goed mijn query:
[ code verwijderd ]
De Group By levert de problemen op. Die heb je alleen nodig als je de database wilt laten tellen hoeveel items er aan een bepaalde voorwaarde voldoen. Je krijgt dan per datum 1 rij (dat gebeurt met DISTINCT() ook, dus die moet je ook niet gebruiken) en de velden id en titel worden wel gevuld met een artikel die bij die datum hoort, maar je kunt vooraf niet voorspellen welk artikel wordt gekozen (aangenomen dat je meer artikelen op een dag hebt).

1
2
3
4
<?php
$query 
= ('SELECT id, datum, titel FROM nieuws WHERE actief = 1 ORDER BY datum DESC')
    or die (
'Query Error');
?>


Zo krijg je wel alle nieuwsberichten uit de database.
pi_69195545
quote:
Op dinsdag 19 mei 2009 16:01 schreef Darkomen het volgende:
Ja maar je weet de dag, de maand en het jaar, die zet je om naar een unix timestamp

Btw, ik ben ook maar een php-hobby-prutser :d
Chandler, WyriHaximus, Light en lassie hebben vast veel betere ideen
Je zou ook kunnen overwegen een .txt bestandje te gebruiken.
Zoek maar eens op php gastenboek die zonder database werken, dus met een tekstbestand om de data in op te slaan.
Dan heb je helemaal geen database nodig!
pi_69196413
Waarom zou je voor het opslaan van data geen database willen gebruiken?
Opslaan als XML of YAML kan ik wel begrijpen, maar een plain text bestand is er gewoon niet voor gemaakt.
  woensdag 20 mei 2009 @ 15:09:39 #71
137690 Pizzahut
Het Bora Bora Gebergte
pi_69227538
quote:
Op dinsdag 19 mei 2009 16:35 schreef Light het volgende:

[..]

De Group By levert de problemen op. Die heb je alleen nodig als je de database wilt laten tellen hoeveel items er aan een bepaalde voorwaarde voldoen. Je krijgt dan per datum 1 rij (dat gebeurt met DISTINCT() ook, dus die moet je ook niet gebruiken) en de velden id en titel worden wel gevuld met een artikel die bij die datum hoort, maar je kunt vooraf niet voorspellen welk artikel wordt gekozen (aangenomen dat je meer artikelen op een dag hebt).
[ code verwijderd ]

Zo krijg je wel alle nieuwsberichten uit de database.
Ja dat weet ik, maar dan krijg ik niet:
April
- 1
- 2
Maart
- 1
- 2
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_69235834
quote:
Op woensdag 20 mei 2009 15:09 schreef Pizzahut het volgende:

[..]

Ja dat weet ik, maar dan krijg ik niet:
April
- 1
- 2
Maart
- 1
- 2
Kan je je databasestructuur voor de betreffende tabellen eens posten?
pi_69239190
eingelijk is je vraag heel simpel saaw;

in je HTML dien je iedere textarea te voorzien van een noemer, dit kan op 2 manieren

textareanaam_1 of textareanaam[1], ik raad aan om de laatste te gebruiken.

wil je een formulier submitten dan moet je een form toevoegen <form method="post" action="jescript.php">.....</form>

Voeg hidden fields toe voor 2 gegeevns (1 maand, 1 jaar).

<input type="hidden" name='jaar" value="2009" />
<input type="hidden" name="maand" value="05" />

Aan de onderkant van je tabel zet je een submit button neer.

Dan komen we aan de html code.

Om te kijken of je formulier is gepost kun je het beste dit gebruiken
if ($_SERVER['REQUEST_METHOD'] == "POST") { // etc }

etc staat voor uitvoeren van je gegevens.

daarna controleer je of de array textareanaam bestaat met www.php.net/isset en doe je gelijk een check of het een array is met www.php.net/is_array.maar ook check je even of jaar & maand correct zijn (stel iemand zit te kutten met je formulier, nooit leuk) met bv www.php.net/is_numeric

Beiden ok? dan kun je een www.php.net/foreach loopje gebruiken.

Met insert gooi je gegevens in de database, daarvoor gebruiken we www.php.net/mysql_query maar controleer altijd of deze data al bestaat, dit doe je ook met www.php.net/mysql_query en www.php.net/mysql_result

de rest moet je zelf maar even bedenken, ik ben ziek (griep) en heb verder geen zin meer om te schrijven.

HF en mocht je er niet uitkomen, mijn Berichten Box is nog niet vol hoor maar verwacht dit weekend iig geen antwoord
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  vrijdag 22 mei 2009 @ 14:00:37 #74
137690 Pizzahut
Het Bora Bora Gebergte
pi_69290772
quote:
Op woensdag 20 mei 2009 19:20 schreef beerten het volgende:

[..]

Kan je je databasestructuur voor de betreffende tabellen eens posten?
id int
catid int
titel varchar
door varchar
datum timestamp
bericht text
tags varchar
actief int
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
  vrijdag 22 mei 2009 @ 21:10:39 #75
84926 WyriHaximus
Release the hounds smithers!
pi_69304998
Zeg vraagje bouwt iemand van jullie wel een shell scripts in PHP? (Gewoon puur intresse aangezien het hier vooral over websites gaat.)
phluphy for president!
  vrijdag 22 mei 2009 @ 21:13:55 #76
75592 GlowMouse
l'état, c'est moi
pi_69305116
quote:
Op vrijdag 22 mei 2009 21:10 schreef WyriHaximus het volgende:
Zeg vraagje bouwt iemand van jullie wel een shell scripts in PHP? (Gewoon puur intresse aangezien het hier vooral over websites gaat.)
Scripts die je vanaf de commandline uit moet voeren ja (veelal cronjobs), interactieve shell scripts nee.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  vrijdag 22 mei 2009 @ 22:56:12 #77
84926 WyriHaximus
Release the hounds smithers!
pi_69309215
quote:
Op vrijdag 22 mei 2009 21:13 schreef GlowMouse het volgende:

[..]

Scripts die je vanaf de commandline uit moet voeren ja (veelal cronjobs), interactieve shell scripts nee.
Cronjobs doe ik erg veel tegenwoordig ipv het tijdens een page request te doen werkt veel beter. Interactieve nog nooit gedaan .
phluphy for president!
  vrijdag 22 mei 2009 @ 23:07:44 #78
63192 ursel
"Het Is Hier Fantastisch!
pi_69309823
Windows Scheduled jobs..
om rapportages er aan het eind van de dag en maand uit te spuwen bijv...
pi_69314577
Iemand hier een idee:
quote:
Op zaterdag 23 mei 2009 00:34 schreef The_Terminator het volgende:
Ik wou vandaag voor het eerst het script in de shell draaien maar dat ging niet goed. Ik gebruik (omdat ik PHP4 heb) cURL om de data op te halen en het uiteindelijke bericht te plaatsen. Nu lijkt het echter niet mogelijk om cURL vanuit een shellscript te draaien, er worden geen topics opgehaald.

Iemand toevallig een idee hoe dit wel werkende te krijgen is?
Had ik gepost in het volgende topic: Dagcijfers Actietopic! Alle hulp is welkom!
  zaterdag 23 mei 2009 @ 01:05:33 #80
75592 GlowMouse
l'état, c'est moi
pi_69314674
cURL zou prima moeten werken vanuit een shellscript, dus ik zou kijken waarom dat foutgaat. Het werkt niet anders dan wanneer je het script via de browser opvraagt.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_69315128
quote:
Op zaterdag 23 mei 2009 01:05 schreef GlowMouse het volgende:
cURL zou prima moeten werken vanuit een shellscript, dus ik zou kijken waarom dat foutgaat. Het werkt niet anders dan wanneer je het script via de browser opvraagt.
Het gaat fout bij cURL, daar ben ik heel zeker van. Het script print bij elke stap een regel, en nadat cURL is aangeroepen stopt hij omdat er niets is ontvangen. Ook van de init functie krijg ik niets terug... Ik heb het script nu even in een browser geopend, eens zien of dat goed gaat.

Edit: ja, het script is nu vrolijk aan het indexeren. Ik heb ook al even ge-googled op dit probleem, maar er is weinig boeiends te vinden.
  zaterdag 23 mei 2009 @ 01:29:16 #82
75592 GlowMouse
l'état, c'est moi
pi_69315200
Is het dezelfde pc? En curl is wel enabled? Error Reporting staat aan? En er is geen firewall of iets anders dat verkeer blokkeert? Het lijkt me nu echt standaard debugwerk want cURL werkt uiteraard ook gewoon via de commandline mits goed ingesteld.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_69315228
quote:
Op zaterdag 23 mei 2009 01:29 schreef GlowMouse het volgende:
Is het dezelfde pc? En curl is wel enabled? Error Reporting staat aan? En er is geen firewall of iets anders dat verkeer blokkeert? Het lijkt me nu echt standaard debugwerk want cURL werkt uiteraard ook gewoon via de commandline mits goed ingesteld.
Het is dezelfde pc inderdaad. cURL vannuit een php script aanroepen gaat wel goed zolang die door Apache geserveerd wordt. Of moet er iets ingesteld worden als cURL wordt gebruikt buiten Apache om?
pi_69316229
quote:
Op zaterdag 23 mei 2009 01:00 schreef The_Terminator het volgende:
Iemand hier een idee:
[..]

Had ik gepost in het volgende topic: Dagcijfers Actietopic! Alle hulp is welkom!
Ik heb zo geen oplossing, maar is het niet handiger om PHP5 te gebruiken ipv PHP4? Als ik je posts goed begrijp, werkt het wel in PHP5.
pi_69323002
quote:
Op zaterdag 23 mei 2009 02:16 schreef Light het volgende:

[..]

Ik heb zo geen oplossing, maar is het niet handiger om PHP5 te gebruiken ipv PHP4? Als ik je posts goed begrijp, werkt het wel in PHP5.
In PHP5 is cURL overbodig gezien daar al functies in zitten voor het verkrijgen of posten van data. Helaas lukt het me niet om PHP5 geinstalleerd te krijgen op mijn Suse 10 bak...
  zaterdag 23 mei 2009 @ 13:35:30 #86
75592 GlowMouse
l'état, c'est moi
pi_69323193
Vergelijk phpinfo() op de commandline eens met die op je webserver. Als je shelltoegang kunt geven, wil ik ook wel even zoeken.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_69323311
quote:
Op zaterdag 23 mei 2009 13:27 schreef The_Terminator het volgende:

Helaas lukt het me niet om PHP5 geinstalleerd te krijgen op mijn Suse 10 bak...
Da's vreemd. Is daar niet gewoon een of ander standaardpakket voor?
pi_69324601
quote:
Op zaterdag 23 mei 2009 13:41 schreef Light het volgende:

[..]

Da's vreemd. Is daar niet gewoon een of ander standaardpakket voor?
Heb hier al veel tijd aan besteed. Hij mist bepaalde dependencies. Suse 10 is waarschijnlijk al te oud om dit werkende op te krijgen. En de server herinstalleren met een andere distro heb ik helaas geen tijd voor...
pi_69324716
quote:
Op zaterdag 23 mei 2009 13:35 schreef GlowMouse het volgende:
Vergelijk phpinfo() op de commandline eens met die op je webserver. Als je shelltoegang kunt geven, wil ik ook wel even zoeken.
Via de webserver:
quote:
CURL support enabled
CURL Information libcurl/7.15.5 OpenSSL/0.9.7g zlib/1.2.3 libidn/0.5.9
Via de shell:
quote:
curl

CURL support => enabled
CURL Information => libcurl/7.15.5 OpenSSL/0.9.7g zlib/1.2.3 libidn/0.5.9
Exact hetzelfde dus...
  zaterdag 23 mei 2009 @ 15:11:04 #90
75592 GlowMouse
l'état, c'est moi
pi_69325281
Ik zou zeggen, probeer toch met een kleiner script te debuggen.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')