Hallo,
Ik heb nu een database gemaakt waarbij de IPadres, datum en de rang word opgeslagen. Nu wil ik dat als iemand met het ipadres die opgeslagen in de database komt dat die gene een bericht te zien krijgt.

ik heb het al eens geprobeert met sessions, maar dat lukt niet, daarom had ik ook in de database de tabel rang. Wat moet ik nu doen dan?

Het is dus de bedoeling dat de gene waarvan het ipadres is opgeslagen een bericht krijgen en de bezoekers waarvan het ip niet opgeslagen geen bericht krijgen.
Kijk hier eens

En leg eens duidelijk uit wat je wilt en waarom je sessies wilt gebruiken?
En hoe worden de gegevens opgeslagen?
Wat heb je al geprobeerd en laat daar eens een deel van zien.
<?php }elseif(isset($_SESSION['rang'])) { ?>
&raquo; <a href="?p=lala">Link voor vaste bezoker</a><br />
<?php } ?>

Dit werkte dus niet!
en hoe wordt $_SESSION['rang'] gevult?
LOL moet je dat vullen? :O
SELECT COUNT(*)
FROM tmipTABEL_MET_IP_ADRESSEN
WHERE tmipIPADRES = '$IP_ADRES';

Krijg je een getal groter dan 0 terug dan bestaat het IP in de TABEL....
PS: Voor php hulp moet je een ander topic hebben...


Groetjes: Roger Keulen.

PS: Wat wil je eigenlijk maken? Dat je een MAILTJE krijgt als je inlogged bent? Of wil je elke dag mensen gaan mailen die bekend zijn en die dag of periode hebben ingelogged...


Dat zou ik niet via php gaan maken maar gewoon in de database oplossen.
Maar begrijp niet echt wat je nu wilt maken....
Maar als je een bericht wilt verzenden heb je toch php nodig, maar meestal is het handig om eerst de berichten te gaan verzamelen en die dan bv elke 10 minuten gaan versturen.


Hier alvast een simpel voorbeeld hoe je dit in de DB kunt oplossen:

Tabel = ipaIPADRESSEN_tbl (ipa = prefix voor UNIQUE veld namen!)
ipaPK
ipaIPADRES
ipaRANG
ipaEMAIL
ipaCREATEDATE (Datum aangemaakt record)
ipaMODDATE (Laatste x ingelogged)

Tabel = brcBERICHTENQUEUE_tbl
brcPK
brcTEXT
brcHTML
brcONTVANGER
brcBERICHTVERZONDEN
brcDATUMVERZENDING (Wanneer gaan we verzenden of hebben we het bericht verzonden)




Nu doen we bij elke IP ADRESS die inlogged zijn 'record' updaten...
Nu gaat dit alleen als het IP ADRESS in de database staat en dat is precies wat we willen.

Dus we updaten de ipaIPADRESSEN_tbl en veranderen de laatste inlogdatum naar NU:

UPDATE ipaIPADRESSEN_tbl
SET ipaMODDATE = CURRENT_TIMESTAMP WHERE ipaIPADRES = '$IPADRESS' LIMIT 1;


Als deze persoon dus bestaat wordt er een UPDATE gedaan op deze tabel...
Nu kunnen daar een TRIGGER voor schrijven die nu deze persoon toegaat voegen aan de brcBERICHTENQUEUE_tbl.

<pre>
CREATE TRIGGER TOEVOEGEN_BERICHT_INLOGGEN BEFORE UPDATE ON ipaIPADRESSEN_tbl
SET @STANDAARD_TEXTBERICHT = 'Hallo';
SET @STANDAARD_HTMLBERICHT = '<B>Hallo</B>';
SET @VOLGENDEVERZENDING = '2011-05-01 12:00'

FOR EACH ROW BEGIN
INSERT INTO brcBERICHTENQUEUE_tbl
SET brcTEXT = @STANDAARD_TEXTBERICHT, brcHTML = @STANDAARD_HTMLBERICHT, brcONTVANGER = NEW.ipaEMAIL,
brcBERICHTVEZONDEN = False, brcDATUMVERZENDING = @VOLGENDEVERZENDING;
END;
</pre>


En als we dan een 2de view maken voor de berichten die nog moeten:
SELECT *
FROM brcBERICHTENQUEUE_tbl
WHERE brcBERICHTVERZONDEN = FALSE AND brcDATUMVERZENDING >= CURRENT_TIMESTAMP

Dan zien we alleen RECORDS/BERICHTEN die nog niet verzonden zijn en de verzend datum is verstreken. En dus verzonden moeten worden.




[size=xsmall]Toevoeging op 26/04/2011 16:01:55:[/size]

Maar ik denk dat je beter eerst kunt gaan lezen i.p.v. klikken...

http://www.mysqltutorial.org
http://www.brainbell.com/tutorials/MySQL


Want ik denk niet dat je weet wat PHP en wat MYSQL is...
En de basis is toch wel handig om te gaan leren.

Groetjes: Roger Keulen.
@Roger hoe kom je erbij dat ie een mail wilt gaan versturen?
en is jouw code niet een beetje overdreven?
Hij wil gewoon controleren of het IP van de bezoeker overeenkomt met een IP uit de database. En aangezien dat dat best makkelijk is kan ie beter even de basis gaan leren.
aanmelden een hidden field maken met ip ?

en dan select from database

en daarna:
<?php
if($databaseip=="$remota bla bla bla"){echo"jeej";}else{echo"ah";}

ik zeg wel dat ik niet de beste in php ben :)
en hoe doe je dat met dezelfde gebruiker die van meerdere ip-adressen jouw site bekijkt. Ikzelf heb dagelijks 4x een ander ipnummer. Mijn werkstation op werk, mijn laptop met wifi of internet dongel (dus 2 ipadressen net wat beschikbaar is) en dan nog mijn blackberry. Verder zit ik op mijn werkstation met 1000 collega's op 1 ipnummer.....
Het opslaan van ipnummers is zooooooooooo fout. Alleen in extreme gevallen zoals een ip-ban is het echt zinvol alhoewel we helaas bij ons bedrijf al jaren niet meer kunnen schrijven op geenstijl omdat iemand iemand er een zooitje van maakte en we een levenslange ipban hebben.....

Reageren