forum met actieve topics.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sjefke

sjefke

03/01/2005 12:21:00
Quote Anchor link
hey,

ik ben het forum nu aan het afmaken waar ik een paar dagen mee bezig ben. ik stuit op een heel klein probleempje. ik weet nu hoe je actieve topics kan doen. dat doe ik door bij een nieuwe topic te laten 'insert' in een andere forum tabel. die heet forum_actief. alleen hoe kan ik het topic id nu laten posten?

als ik de code moet posten doe ik dat wel.
 
PHP hulp

PHP hulp

26/12/2024 22:46:28
 
Marien xD

Marien xD

03/01/2005 12:59:00
Quote Anchor link
ik snap je vraagstelling niet helemaal?
 
Sjefke

sjefke

03/01/2005 13:20:00
Quote Anchor link
ik maak een forum.
ik ben bijna klaar. alles werkt.
nu wil ik actieve topics maken.
ik weet wel hoe ik het moet maken alleen 1 probleempje.
hoe kan ik het id posten die word gepost bij newtopic.php. als er een nieuwe topic word geplaatst moet die uiteraard in de lijst actieve topics komen. daarvoor wil ik dit in de tabel forum_actief zetten: topicid, topictitel en datum.
datum & topictitel lukt. alleen hoe kan ik nu ook het topicid meeposten?
 
Johan

Johan

03/01/2005 13:33:00
Quote Anchor link
eerst selecteren ofzow bijv $id = mysql_num_rows($sql); $id++; en dan opnieuw inserten...
 
Sjefke

sjefke

03/01/2005 13:36:00
Quote Anchor link
<div align="center">
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
# Selecteren uit db
$sql = 'SELECT * FROM forum_cat WHERE Cid = '.$Cid;
$res = mysql_query( $sql );

# Kijken of er resultaat is
if( mysql_num_rows( $res ) > 0 )
{

   # Id bestaat, database gegevens fetchen
   $data = mysql_fetch_array( $res );

   # Kijken of er nog gepost mag worden
   if( $data['post'] == 1 )
   {

echo "<form method='post' action='?page=forum/newtopic&Cid=".$_GET['Cid']."'>";
echo "<table width='100%' border='0' cellspacing='0' cellpadding='0'>";
echo "<tr>";
echo "<td width=20%><b>Topic Titel</b>:</td>";
echo "<td width=80%><input type='text' name='titel'></td>";
echo "</tr>";
echo "<tr>";
echo "<td width=20%><b>Naam</b>:</td>";
echo "<td width=80%><input type='text' name='door'></td>";
echo "</tr>";
echo "<tr>";
echo "<td width=20%><b>E-mail</b>:</td>";
echo "<td width=80%><input type='text' name='email'></td>";
echo "</tr>";
echo "<tr>";
echo "<td width=20%><b>Bericht</b>:</td>";
echo "<td width=80%><textarea name='bericht' cols='40' rows='5'></textarea></td>";
echo "</tr>";
//knoppen
echo "<tr>";
echo "<td width=20%><b></b></td>";
echo "<td width=80%><input type='submit' name='verzenden' value='Plaats New Topic'></td>";
echo "</tr>";
echo "</table>";
echo "</form>";
   }

   else
   {
echo "Er mogen <i>Geen</i> topics meer worden geopend in deze categorie!";
   }
}

?>

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
if(isset($_POST['verzenden'])){ //Als er Post is gedrukt dan....
    if($_POST['door'] == "" ){ // Checken of er een naam is ingevult..
        echo "U heeft uw naam niet ingevult"; // Als dat niet zo is
    }if($_POST['bericht'] == "" ){ // kijken of er wel een bericht is geplaatst
        echo "U heeft geen bericht ingevult"; // Als dat niet zo is
    }else{ // Anders Even de zooi toevoegen
        $titel = $_POST['titel'];
        $door = $_POST['door'];
        $bericht = $_POST['bericht'];
        $email = $_POST['email'];
        $catid = $_GET['Cid'];
$hours = 7;  
$datum = date('d-m-j G:i ', (time () + ($hours * 3600)));
        $ip = $_SERVER['REMOTE_ADDR'];
        

$sql = "INSERT INTO forum_topics (id, titel, door, email, catid, bericht, datum, ip) VALUES ('', '$titel', '$door', '$email', '$catid', '$bericht', '$datum', '$ip')";
$query = mysql_query($sql) or die(mysql_error());

$act = "INSERT INTO forum_actief (topicid, topictitel, datum) VALUES ('".$_POST['id']."', '".$_POST['titel']."', '".$datum."')";
$query = mysql_query($act) or die(mysql_error());

        echo "Uw topic is succesvol toegevoegt. U word doorbonden naar uw geplaatste topic <a href='?page=forum&id=".$_POST['id']."'>klik</a>";
    }
}

?>

</div>

dat is mijn newtopic.php.
@johan kan jij hem aanpassen snap namelijk niet echt wat je bedoelt.
 
Dutchcamel

dutchcamel

03/01/2005 14:57:00
Quote Anchor link
Actieve topics is toch waarin het laatst gepost is?
Krijg je gewoon een query die er ongeveer zo uit ziet (even aanpassen aan je eigen kolomnamen enzo):

SELECT * FROM forum_topics ORDER BY lastpost DESC LIMIT 0, 25;

Het lijkt mij handig om bij forum_topics een extra kolom 'lastpost' ofzo bij te maken en bij een post op dat moment de datum ook in die tabel te wijzigen. Zo kun je eenvoudig de actieve topics ophalen, in dit geval de laatste 25.



(Je zou dit ook nog bij tabel forum_cat kunnen doen, zodat je bij het categorie overzicht net als bij Fok! of GoT een lampje ofzo voor de categorie kunt plaatsen of daar sinds het vorige bezoek nog in gepost is. Maar daarvoor moet je uiteraard weer het vorige bezoek ergens opgeslagen hebben...)
 



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.