PHP hjälp
Hej. Jag började läsa PHP idag. Jag har därför ingen kolla alls på PHP i princip. Har suttit med det 2-3 timmar. Vad jag försöker klura ut är en funktion att uppdatera en sida enkelt, typ som en blogg. Jag har gjort detta: Länk till http://www.layup.nu/phptest/form . Man skriver i rubrik och text så kommer det på nästa sida, men om man uppdaterar sidan försvinner det. Jag är säkert helt ute och cyklar och gör på helt fel sätt. Någon som vet hur man går tillväga och kan peka mig i rätt riktning? Hur får jag inlägget att sparas på något sätt?? (går inte att posta koden här i inlägget..)
jag har alltid rätt.
eftersom jag inte ser någon kod nu, så antar jag att scriptet är en form, som skickar informationen till samma sida, men sen visar den bara svaret som fanns i formen? du måste ju välja Hur du ska spara informationen också. det finns en massa olika varianter att använda sig utav, det bästa är såklart att spara det i en databas. men det enklaste och det man brukar lära sig först är att spara det i en textfil på server sidan. kolla upp kommandot "fopen" phpskolan eller vad sidan heter har väll massa sånna där grundläggande saker? mysql är en bra databas att börja med iaf, den är gratis och jävligt stabil. kolla lite php Tutorials på google, eller helt enkelt "lära sig php" osv. tror internetworld har en grundläggande kurs också. kolla internetworld på idg.se sen webbskolan lr vafan den heter
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
...och det är det som är så fint med whoa!
Rättelse: första radens kommentar ska såklart vara "Värdet i första textfältet" Annars håller jag med om att du ska köra en MySQL-databas om du ska lansera det, mycket smidigare. Godnatt!
...och det är det som är så fint med whoa!
Tack för tipsen. Jag har gjort en databas med en tabell som jag kan hämta och visa data från på sidan. Jag kan även lägga in data i tabellen via ett kodstycke. Vad jag försöker göra nu är att skicka text från ett formulär till en tabell. Jag har googlat efter tutorials hela förmiddagen men hittar inget vettigt. Någon som kan peka mig i rätt riktning, känner till något bra tutorial eller rent av kan berätta hur jag ska göra? Tack
jag har alltid rätt.
Länk till http://pastebin.com/m7c01c3b Otestad men bör fungera till det du ska använda den till.
Du ska ha en databas som innehåller en tabell som heter: namn.
I den ska du ha en post som heter namn och en som heter efternamn och id såklart.
b-b-bassan!
this is for my niggas and my nymphos, non stop bangin like a dilla instrumental
Promotor
2009-01-18 16:43
Inte för att detta inlägget riktar in sig på denna tråden, men
www.tutorialized.com är min bästa källa för tutorials, av alla sorter! checka den
Nej din var väldigt fint skriven, min var kanske aningen mer pedagogisk (med tanke på TS kunskapsnivå) men bättre och snyggare att skriva som dig.
b-b-bassan!
pusherman varför använda fopen() när du har file_get_contents() och file_put_contents().. känns puligt att sitta och lära sig php4 saker när det är php5 som gäller.. =)
cry me a river! --> thcrew
cry me a river! --> thcrew
kom inte ihåg vad dom nya hette, har inte programmerat php på flera va inte ens säker på att det var fopen det hette ens en gång. har sqlite några fördelar gentemot mysql? aldrig hört talas om det ens, mysql är ju iaf jävligt beprövat
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
fördelarna är väl en sida av samma mynt som nackdelarna.. ordet sqLITE talar sitt tydliga språk.
cry me a river! --> thcrew
nu snor ja tråden lite. någon som vet en bra sida där man kan lära sig grunderna av php, hur de funkar osv?
Sleep is the cousin of death
B.N.B,
på engelska, PHP.net helt enkelt.
men ett grundkrav för att få tillstånd att programera php är dock att man vet hur man Googlar.. det är ganska enkelt att lära sig om man iaf har någorlunda erfarenhet av att starta en dator först. lol (klarar ingen av att googla själv nuförtiden? zZzzZzznark är det så svårt?)
annars finns det hur många fler som helst, bland annat dessa tre svenska:
http://www.phpportalen.net http://www.phpsidan.nu http://archive.64bits.se/guider/php-skola/index.php osv, osv, osv, osv...
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
tack pusherman. jo jag har googlat innan(aldrig orkat ta upp o läsa om det för många sidor är dåligt formulerade) men så var ja tvungen att fråga, för ibland missar man dom bästa sidorna och så fanns det redan en tråd om ämnen så ja passade på o fråga. godnatt!
Sleep is the cousin of death
w3schools har väl en php avdelning?
cry me a river! --> thcrew
php-avdelning whatever..
cry me a river! --> thcrew
det ska dom ha, dom har haft det iaf vet jag för jag brukade kika där, men det var länge sen jag höll på med php som sagt så jag vet inte hur det är med nånting nu. vet inte ens vilken version php är inne på nu ens :P
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
Jag har stött på ett nytt problem
Nu har jag lärt mig hur man lägger in text i en databas och hur man visar den på en sida.. Det är dags att fixa ett simpelt sätt att RADERA inläggen.
Jag använder mig av denna koden:
Länk till http://www.newmedia.lincoln.ac.uk/dcarr/tutorials/php/delete-rows-from-a-mysql-database-with-a-confirmation Inlägget raderas som det ska, men efter det kommer inte listan upp igen, vilket det ska göra "Once the query has finished the row has been deleted then reload the page using a header with (KOD SOM INTE KAN SKRIVAS I DETTA INLÄGGET) which will store the page your on so it will reload the same page.
Den lilla "koden som inte kan skrivas här" som tydligen ska rendera om sidan efter man raderat ett inlägg verkar inte funka (händer samma sak om jag tar bort raden som om jag låter den vara kvar, allt innan koden som listar upp inläggen med en deleteknapp brevid syns).
Någon som vet vad som kan vara felet? Annars, någon som kan tipsa om ett smidigare sätt att radera inlägg, som funkar till 100%
TACK
jag har alltid rätt.
antingen genom låta formuläret posta till samma sida action="" eller genom att pula in header("Location: densidaduskatill.php"); i slutet av den sida du anropar i formuläret..
cry me a river! --> thcrew
(om du använder den koden du länkade kan du alltså testa med att byta ut http_referer delen mot sidan du vill ladda.. det borde funka..
cry me a river! --> thcrew
Det är fan jävligt konstigt. header("Location: densidaduskatill.php"); funkar inte. Jag har admin.php När jag klickar på delete efter ett inlägg där kommer man till admin.php?radera=14 (tar bort inlägget med id 14) och där finns inte den listan med inläggen. Istället för header("Location: densidaduskatill.php"); kan jag skriva in text, eller ha en länk där det står klicka här så kommer man tillbaka till admin.php. Men jag vill att det ska ske automatiskt direkt. Och det är väl vad header("Location: densidaduskatill.php"); gör om jag inte har helt fel för mig (noob). Någon som har någon aning om varför header("Location: densidaduskatill.php"); inte funkar?
jag har alltid rätt.
antagligen har du nån output innan headern som gör att den inte kan skickas.. släng in ob_start(); längst upp och ob_flush(); efter header raden och testa..
cry me a river! --> thcrew
om du menar ob_start(); header("Location: view.php"); ob_flush(); så funkar det inte =(
jag har alltid rätt.
Finns det någon html kod som flyttar en direkt till en annan sida när man kommer in på en sida? Isf kan jag väl använda den i en echo("<html koden>");
jag har alltid rätt.
Jag löste det med: echo "<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.yourdomain.com/index.html">"; Det funkar hur bra som helst, men kan det vara strul med att använda detta? Denna koden funkar på alla webbläsare väl?
jag har alltid rätt.
ingen aning om vad du gör fel isf.. testa släng på error reporting och se vad den gnäller på.. och ja.. <META HTTP-EQUIV="Refresh" CONTENT="0; URL=dinsida.php"> däremot funkar det väl lite sisådär beroende på inställningar..
cry me a river! --> thcrew
ok. Får köra med <META HTTP blabla... för nu. En sak jag tänkte på är att för att radera ett inlägg genereras bara en länk med ?radera=23 på slutet. Jag testade att bara skriva in ?radera=24 efter adressen i adressfältet, och då raderades nästa inlägg. Testade även på en annan dator och raderade nästa inlägg igen. Det innebär ju att någon taskig jävel kan lista ut ?radera och den bara skriva in massa nr efter för att ta bort en massa inlägg från sidan!! Ska det vara så hehe? Är det tillräckligt säkert om man bara döper om "radera" mot typ 728hf8tg49248tgfgkbce8b? Så det blir: sidan.php? 728hf8tg49248tgfgkbce8b=25 för att radera ett inlägg? Man kan inte gå in och titta i php kod väl, och 728hf8tg49248tgfgkbce8b är ju rätt så svårt att gissa sig fram till
jag har alltid rätt.
känns som att det är lite smidigare med ett inloggningssystem..
cry me a river! --> thcrew
hmm jo det har du rätt i.. hehe
jag har alltid rätt.
posta inläggen på phpportalen.net istället, där kan du även visa din kod på ett smidigt sätt :)
b-b-bassan!
Jag har stött på en sak till nu jag inte riktigt kan klura ut. Jag har 4 fält i en tabell.. rubrik, text och bild-url. Visningen är upplagd såhär: echo(rubrik) "<img src=\"" . (bild-url) . "\" width=\"500\">"(text) typ iaf, ni fattar principen. Efter rubriken skrivs alltid bild urlen ut. Har man ingen bild i inlägget blir det bara img src="" och då visas ingen bild. Problemet är då att i safari får man en extra radbrytning mellan rubrik och text och i IE får man en 500x500 stor bilden kan inte hittas ruta. Lösningen som jag kan komma på skulle kunna vara att sätta bild koden i en egen echo och bara trigga den om fältet bild-url inte är tomt. Min fråga: hur gör man för att trigga en echo ifall det finns text i ett fält? En if sats borde det ju vara, men hur skriver man för att if satsen ska söka igenom bild-url efter text? Tacksam för all hjälp
jag har alltid rätt.
"Jag har 4 fält i en tabell.. rubrik, text och bild-url."
ehh? det är ju bara 3 du nämner?
angående din fråga, du kan använda en if sats som negerar om det inte finns någon text skriven, dvs såhär enligt php.net:
<?php
$var = 0;
// visar true eftersom $var är empty (tom)
if (empty($var)) {
echo '$var ä antingen 0, empty, eller ingenting';
}
// visar true eftersom $var är Nånting
if (isset($var)) {
echo '$var är Nånting fast den den är empty';
}
?>
(jag översatte lite enkelt till svenska så du skulle förstå lättare)
här kan du läsa från php.net:
Länk till http://se2.php.net/empty om hur det funkar
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
alltså du kan göra en kod så att typ: OM "det inte finns någon text i rutan", Då visar den "En Bild med en Vit fyrkant" sen kan du även lägga till typ: OM "den visar en text som inte är i Formatet 'BILD+12345678.jpg", SÅ visar den "en Bild me Vit Fyrkant" hoppas du hänger med :)
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
sen kan du också sätta utropstecken framför en sak typ såhär: if !empty($variabel) { 'gör dittan och dattan' } utropstecken framför, alltså: !empty() betyder i princip att när det INTE finns något.. DÅ ska den göra Såhär.- om du hajjar?.. alltså mitt exempel med if !empty(var) { 'blablaah' } betyder alltså att : om det INTE är TOMT(empty), gör såhär { 'blablaah' }
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
Tack!
jag har alltid rätt.
lol såg vad jag hade skrivit nu, var lite full igår.. när du sätter utropstecken framför, tex framför empty() då blir det: om denna INTE är empty() { gör sdåhär } dvs att om det faktiskt Står någon text där så gör den bla bla aja hoppas du fick det att fungera iaf :)
" Everyone interprets everything in terms of his own experience. If you say anything which does not touch a precisely similar spot in another man's brain, he either misunderstand you, or doesn't understand you at all. "
$bild = ...; echo ($bild != null)?'<img src="'.$bild.'" />':$bild; (syntax -> (bool eval)?true:false;) funkar också.. echo (!empty($bild)) skulle väl fungera det med.. antagligen är det bästa dock att kolla så att bilden finns där... enklast blir väl if (file_exists(...)) { true } else { false } eller som ovan (file_exists(..))?true:false; (kom ihåg alt=".." i bildtaggen också) om du ska använda null eller empty beror lite på hur variabeln sätts.. spelar nog inte så stor roll i det här fallet.. (bool)?true:false; är förövrigt sjukt smidigt att använda.. när du väl är i farten kan du kolla in printf/sprintf..
cry me a river! --> thcrew
Ok här kommer ännu en fråga. Går det att länka till en action? Jag vill att DELETE from INLAGG where id=$id ska triggas när jag klickar på en länk
jag har alltid rätt.
använd GET... a href="blabla.php?delete=id" .... $moo = mysql_real_escape_string($_GET|'delete'|); .... mysql_query(...where id = $id) | är inte | utan sånna man inte får göra =) (alt gr+8/9)
cry me a river! --> thcrew
Tack så mycket =). koden börjar bli otroligt lång och svår att få en överblick av. Jag har 3 olika sätt att visa inlägg.. istället för att ha: if style = 1 (93 rader kod) if style = 2 (93 rader kod) if style = 3 (93 rader kod) vill jag ha: if style = 1 (hämta kod från style1.php) (=EN rad istället för 93) if style = 2 (hämta kod från style2.php) (=EN rad istället för 93) osv.. På så sätt blir det mycket lättare att få en översikt över koden och om man vill ändra något i style2 tex behöver man inte leta igenom den långa koden utan bara öppna style2.php
jag har alltid rätt.
kolla in include() require().. switch() kan också vara till hjälp.
cry me a river! --> thcrew