Oprettet man. d. 15. marts 2010 kl. 10:30:31

Maylind
Maylind (3.685 point. Point ude: 265)

Håber nogen her kan hjælpe mig igang.

Hejsa.

Er igang med et mini online community. Og mangler nu kun at få lavet så vennerne på sitet kan skrive til hinanden. Altså kunne skrive en besked til en anden også skal det kunne ses på den anden brugers side at der er en ny besked. Har søgt rundt på nettet men uden held... Nogen der kender et sted jeg kan finde noget nyttigt:)

Skrevet man. d. 15. marts 2010 kl. 10:36:47| #1


Skrevet man. d. 15. marts 2010 kl. 10:50:56| #2

Maylind
Maylind (3.685 point)
Hmm synes ikke lige jeg kunne finde frem til noget

Skrevet man. d. 15. marts 2010 kl. 11:01:32| #3

Det var vist også en hurtig gennemgang, hva'?

Du har en del spørgsmål åbne - endda besvarede spørgsmål som du ikke har lukket. Det er god kutyme at få afsluttet sine spørgsmål (også jf. brugerbetingelserne her på eksperten.dk) inden man stiller nye. Udover det er folk også mere tilbøjelige til at hjælpe hvis man kan se at der reageres på de svar der kommer. Det var en pæn hentydning...

Relevant til spørgsmålet; du finder nok næppe noget færdigt du kan implementere i dit mini community; du skal nok lave det selv - det betyder du må komme med nogle oplysninger om dine brugertabeller, så man kan komme med nogle forslag til et realistisk tabelsetup til den eksisterende.

Skrevet man. d. 15. marts 2010 kl. 11:27:48| #4

Maylind
Maylind (3.685 point)
okay takker. skal nok lige få dem afsluttet:)

jamen jeg har to tabeller indtil videre. en kaldet opret hvor alle brugerne ligger og en der hedder venner, hvor de forskellige brugere med deres venner ligger:)

Har kun formlen indtil videre, den ser sådan ud:

function send($conn){
$vennerting = mysqli_query($conn,"select * from venner where oid = ".$_SESSION['brugerid']);
?>
    <form method="post" action="?page=sendt" class="login">
        Dit navn:<br />
        <input type="text" name="navn"><br />
        Din besked:<br />
        <textarea cols="35" rows="10" name="besked"></textarea><br />
        Send til:<br />
        <select name="ven">
            <?php
            //Her bliver brugerens venner vist i en dropdown, så brugeren kan vælge hvem der skal skrives til
            while($vennetingresult = mysqli_fetch_array($vennerting)){
                echo "<option>".$vennetingresult['navn']."</option>";
            };
            ?>
        </select>
        <input type="submit" name="send" value="Send"><br />
    </form>   
   
</div>";   
<?php
};

function sendt(){
    echo "Din besked er nu sendt";
};

Skrevet man. d. 15. marts 2010 kl. 11:32:04| #5

Hvordan er strukturen i din tabel 'venner'?

Skrevet man. d. 15. marts 2010 kl. 11:39:50| #6

Maylind
Maylind (3.685 point)
id, navn, email, oid og bid

Skrevet man. d. 15. marts 2010 kl. 12:32:08| #7

En mulighed ville være at oprette en grundlæggende tabel (kald den 'beskeder' om du vil), som indeholder felterne fraId, tilId, bBesked, bDato.
Indhold i den kunne så være noget ala:

+----------+----------+--------------------------------+----------------------+
|  fraId  |  tilId  |      bBesked                  |  bDato              |
+----------+----------+--------------------------------+----------------------+
|      345 |      123 | Hej Peter, har du set den...  | 2010-03-15 12:53:14  |
|      123 |      345 | Ork ja, det var en rigtig...  | 2010-03-15 13:23:45  |
|    1578 |      963 | Gider du sende mig filen m...  | 2010-03-12 09:37:33  |
|      527 |    7415 | Ja, jeg ved det godt, han...  | 2010-03-10 19:27:11  |
+----------+----------+--------------------------------+----------------------+

Jeg håber du forstår idéen?

Så kan du trække beskederne ud til den bruger som skal læse dem ud fra feltet tilId.

Skrevet man. d. 15. marts 2010 kl. 13:16:32| #8

Maylind
Maylind (3.685 point)
det vil jeg lige prøve

Skrevet man. d. 15. marts 2010 kl. 13:22:48| #9

Maylind
Maylind (3.685 point)
Jeg er ikke så dygtig til dette php. så er lidt i tvil om hvordan jeg skal sætte det op i dreamweaver

Skrevet man. d. 15. marts 2010 kl. 13:42:16| #10

Jeg kender ikke dreamweaver... ovenstående er jo et eksempel på en tabelstruktur som du kan anvende til at lagre de beskeder dine brugere imellem sig skriver.

Skrevet man. d. 15. marts 2010 kl. 13:42:55| #11

Maylind
Maylind (3.685 point)
jeg prøver mig lidt frem, skal nok komme tilbage og give point hvis det virker

Skrevet tir. d. 16. marts 2010 kl. 09:21:18| #12

Maylind
Maylind (3.685 point)
Nu har jeg prøvet mig lidt frem, men er ret på bar bund, nogen der kan hjælpe mig med at komme lidt videre?

function send($conn){
$vennerting = mysqli_query($conn,"select * from venner where oid = ".$_SESSION['brugerid']);
?>
    <form method="post" action="?page=sendt" class="login">
        Dit navn:<br />
        <input type="text" name="navn"><br />
        Din besked:<br />
        <textarea cols="35" rows="10" name="besked"></textarea><br />
        Send til:<br />
        <select name="ven">
            <?php
            //Her bliver brugerens venner vist i en dropdown, så brugeren kan vælge hvem der skal skrives til
            while($vennetingresult = mysqli_fetch_array($vennerting)){
                echo "<option>".$vennetingresult['navn']."</option>";
            };
            ?>
        </select>
        <input type="submit" name="send" value="Send"><br />
    </form>   
   
<?php 
if(isset($_POST['send'])){
        $intfra= $_POST['fraid'];
        $inttil = $_POST['tilid'];
        $strbesked = $_POST['bbesked'];
        $intdato = $_POST['bdato'];
   
$x= mysqli_query($conn,"INSERT INTO beskeder (fraid, tilid, bbesked, bdato) VALUES (".$intfra.",".$inttil.", '".$strbesked."',".$intdato.")");
    };
}; 


function sendt(){
    echo "Din besked er nu sendt";
};

Skrevet tir. d. 16. marts 2010 kl. 09:37:18| #13

Jeg antager at det er fordi dit script ikke virker - ikke fordi du 'er på bar bund'?

Der er en del ting, som ikke rigtigt giver mening, er mangelfuld eller også er der nogle stavefejl som påvirker dit endelige resultat.

Blandt andet anvender du variablen $vennetingresult i din while-løkke, men den bliver aldrig defineret. Til gengæld definerer du variablen $vennerting, men du bruger den ikke.

Dine $_POST variabler er slet ikke eksisterende fra din formular - der er ingen af dem der er navngivet rigtigt - udover det sender du heller ikke de rigtige informationer med, der opfylder behovet for din nye tabel.

Der er også et problem med SQL injections i din mysql_query - det er et gabende sikkerhedshul. Husk at anvende mysql_real_escape_string() på de data du får fra dine brugere. Udgangspunktet bør være at du ALDRIG kan stole på dine brugere.

Skrevet tir. d. 16. marts 2010 kl. 09:43:56| #14

Maylind
Maylind (3.685 point)
Ved godt det ser lidt forvirrende ud. men det simpelthen fordi jeg ikke kan finde ud af at få det lavet ordenligt. mine post variabler er som de er inde i min tabel i databasen, for ved ikke helt hvordan jeg skal sætte det sammen.

Håber du forstår lidt:) og kan hjælpe mig lidt

Skrevet tir. d. 16. marts 2010 kl. 10:54:37| #15

Maylind
Maylind (3.685 point)
Nu ser det sådan ud....:/ er helt på bar bund hehe...

function send($conn){
$vennerting = mysqli_query($conn,"select * from venner where oid = ".$_SESSION['brugerid']);
?>
    <form method="post" action="?page=send" class="login">
        Dit navn:<br />
        <input type="text" name="fraid"><br />
        Din besked:<br />
        <textarea cols="35" rows="10" name="bbesked"></textarea><br />
        Send til:<br />
        <select name="tilid">
            <?php
            //Her bliver brugerens venner vist i en dropdown, så brugeren kan vælge hvem der skal skrives til
            while($vennetingresult = mysqli_fetch_array($vennerting)){
                echo "<option>".$vennetingresult['navn']."</option>";
            };
            ?>
        </select>
        <input type="submit" name="send" value="Send"><br />
    </form>   
   
<?php 
if(isset($_POST['send'])){
        $intfra= $_POST['fraid'];
        $inttil = $_POST['tilid'];
        $strbesked = $_POST['bbesked'];
        $intdato = $_POST['bdato'];
   
$x= mysqli_query($conn,"INSERT INTO beskeder (fraid, tilid, bbesked, bdato) VALUES (".$intfra.",".$inttil.", '".$strbesked."',".$intdato.")");
    header("location:?page=sendt");
    };
}; 


function sendt(){
    echo "Din besked er nu sendt";
};

Skrevet tir. d. 16. marts 2010 kl. 23:33:51| #16

bqnke
bqnke (7.105 point)
prøv at ansøge nnbw@live.dk det kunne være jeg havde tid til at hjælpe dig lidt:)

Skrevet ons. d. 17. marts 2010 kl. 12:33:43| #17


Skrevet ons. d. 17. marts 2010 kl. 12:38:49| #18

Rolig nu; du bliver nok nød til at indse at projektet er for svært for dig og du ikke selv ville kunne formå at lave det.
#16 har endda tilbudt at hjælpe dig over MSN, men problemet er nok at du mangler basal viden omkring PHP. De ting jeg påpegede der var galt med dit script er meget grundlæggende, men du var ikke i stand til at se og rette fejlene, så det tyder på at du prøver at opnå for meget med for få redskaber.

Skrevet ons. d. 17. marts 2010 kl. 12:43:13| #19

Maylind
Maylind (3.685 point)
skriver også med ham men han synes ikke at svare mere:(

Skrevet ons. d. 17. marts 2010 kl. 12:44:05| #20

Maylind
Maylind (3.685 point)
Forstår ikke altid denne side.... man spørger efter hjælp men for af vide man ikke er god nok, ved skam godt jeg ikke er særlig dygtig men bliver jeg da heller ikke hvis man ikke prøver sig frem... Skal bare kunne se en ide i det så kommer det som regl

Skrevet ons. d. 17. marts 2010 kl. 13:11:59| #21

Jeg forstår til gengæld ikke dit problem; du klager over at folk siger du ikke er dygtig nok - mon ikke det så er rigtigt? Du skyder langt over mål, og i mange af dine spørgsmål er det endt med at folk er kommet med hele løsningen til dig; det er jo ikke at få hjælp - det er at indhente gratis arbejdskraft og du får intet ud af det, for du lærer ikke noget ved at få tingene foræret... Og så er du VILDT utålmodig - folk hjælper dig når de har tid; ellers må du betale for hjælpen!

Skrevet ons. d. 17. marts 2010 kl. 13:21:35| #22

Maylind
Maylind (3.685 point)
øhh hallo har skrevet jeg udmærket godt ved jeg ikke er særlig dygtig... men det kan mesteren godt lide at kører i

Skrevet ons. d. 17. marts 2010 kl. 13:25:37| #23

omg... du missede hele pointen...

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Inspion Economy søger en dygtig programmør, som kan...

Oprettet den 10. februar 2012 kl. 16.23
Kathja giver 15 point for svar | Giv et svar »

Socialt Netværk system søges (WP eller andet)

Oprettet den 9. februar 2012 kl. 22.23
zimonb giver 30 point for svar | Giv et svar »

Joomla - JomSocial

Oprettet den 9. februar 2012 kl. 18.04
zimonb giver 30 point for svar | Giv et svar »

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Her er fem sjove danske websider du skal kende

Trænger dine lattermuskler til en omgang fitness på dansk? Vi viser vej til fem websider fyldt med humor og vanvittig satire.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Nu kan du snart hente Windows 8

Den nye offentlige betaversion af Windows 8 er klar i denne måned.


Nyheder fra Computerworld

Teaser billede

Måske snart slut med Androids helt store problem

Android-platformen har længe været plaget af et særligt problem. Men måske er problemet nu ved at være elimineret.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger