Gå til innhold

Automatisk lage en side kalt opp etter ID'en?


Anbefalte innlegg

Videoannonse
Annonse

Ærlig talt, men no offence... Hvis du ikke engang vet hvordan du skal takle dette problemet her du ikke noe å gjøre rundt å programmere et CMS. Pluss det du nevner her høres ikke ut som et CMS-system engang. Vil nok si et CMS blir definert av litt mer enn et skjema og en database.

 

Mitt råd er du leser litt grundigere og starter med noe litt mer for en nybegynner enn dette.

Lenke til kommentar

du mener noe sånt som /index.php?showpost=35? ,

Så lages det en ny side som er lik for alle du går inn på? Bortsettfra innholdet naturligvis.

 

Da lager du en ny side, designer den som du vil.

 

Så starter du med å koble til databasen osv. så kan du bruke dette for å hente ut hvor i databasen den skal hentes utifra:

 

$id = $_GET["id"];

$sql="SELECT * FROM "din table" WHERE id='$id'";
$result=mysql_query($sql) or die(mysql_error());

$rows=mysql_fetch_array($result) or die(mysql_error());

 

Så nedover i dokumentet ditt kan du bare sette f.eks <?php echo $rows['navn']; ?> der du skal ha fram info:)

 

Håper dette hjalp ihvertfall litt :)

Lenke til kommentar
Hei.

Jeg har laget et CMS system, som legger til nyheter i en database og henter ut igjen på en side. Det jeg vil, er at når jeg har trykker på submit, skal det automatisk bli lagd en side som er kalt opp etter ID'en nyheten får. I den fila som blir lagd, skal det også komme inn litt koder (automatisk)

7833783[/snapback]

 

Hei igjen Andy Pandy.. Jeg må nesten si meg enig i Allyse. Jeg anbefaler deg å laste ned brukermanualen til PHP, gå på biblioteket å låne deg noen bøker om emnet.. Skal du LÆRE php, nytter deg ikke å klippe å lime inn koder..

 

Men det får gå for denne gangen :)

Om jeg ikke tar helt feil, ønsker du å opprette en fil?

 

1. Anbefaler at du oppretter en undermappe til dette.. ikke gjør selve www mappen din skrivbar til alt og alle..

2. Selve PHP'en

$mappe = "mappe/til/filen";
// Legg merke til at jeg bruker ' isteden for " på html delen.. Da ungår du at du må escape quoter.. 
$html = '<h1>HTML</h1><p>Dette er filen som jeg har opprettet';

// Husker ikke om du må legge til DESC på slutten av queryet.. men det er bare å prøve seg frem
$query = "SELECT id FROM mintabell ORDER BY id LIMIT=1";

// Hent id'n til innlegget.. å bruker det som filnavn
list($filnavn) = mysql_fetch_row(mysql_query($query));

// Om filen IKKE finnes, så lager vi den
if(!file_exists($mappe.$filnavn.".php")) {
// WB = Betyr at dette er en fil som skal opprettes.. Sjekk http://no.php.net/fopen
$skrivtil=fopen($mappe.$filnavn.".php","wb");
// Lagre filen
fwrite($skrivtil,$html);
// It's a wrap!!
fclose($skrivtil);
} else {
print "Filen finnes allerede!!";
}

 

Har ikke testen koden, så ta forbehold for feil :)

Lenke til kommentar

Ah, takk, skal teste den snart :)

 

Men bare en ting, jeg gikk på biblioteket for én måned siden, og lånte PHP Bible, men jaja...biblioteket ligger selvfølgelig litt etter i tida så de hadde jo bare PHP bok for PHP 4 så hele sida mi ble f**** opp når jeg brukte eksempel koder og slikt som sto der. Men siden naboen min har drevet med HTML og slikt før og hu driver ikke med dette mer, så jeg kan spørre hu om hu har noe selv om det sikkert er enda eldre. Hu hadde en Flash 4 bok =/

 

 

 

Edit:

begynner å få den til nå :)

Bare en ting til: har modifisert koden litt som du kan se litt lenger ned. Det vil si at jeg har skiftet navn på mappe ;P

Men jeg får en error beskjed :S

 

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /var/www/hotserv.dk/users/andersmoen/admin/leggtil.php on line 33

 

Og andre gangen jeg prøvde å legge til en nyhet, så fikk jeg bare "Filen finnes allerede" beskjeden din.

 

 

$mappe = "../nyheter/";
// Legg merke til at jeg bruker ' isteden for " på html delen.. Da ungår du at du må escape quoter.. 
$html = 'Men inne her skriver jeg bare en eller annen kode da?';

// Husker ikke om du må legge til DESC på slutten av queryet.. men det er bare å prøve seg frem
$query = "SELECT id FROM nyheter_1 ORDER BY id LIMIT=1";

// Hent id'n til innlegget.. å bruker det som filnavn
list($filnavn) = mysql_fetch_row(mysql_query($query));

// Om filen IKKE finnes, så lager vi den
if(!file_exists($mappe.$filnavn.".php")) {
// WB = Betyr at dette er en fil som skal opprettes.. Sjekk http://no.php.net/fopen
$skrivtil=fopen($mappe.$filnavn.".php","wb");
// Lagre filen
fwrite($skrivtil,$html);
// It's a wrap!!
fclose($skrivtil);
} else {
print "Filen finnes allerede!!";
}

Endret av Andy-Pandy
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...