problem med at sende infomation

Tags:    php

<< < 12 > >>
hej

det er sådan at jeg har bygge at den sendere infomation videre til en php file som skal sende videre til log ind siden når det er ,

Fold kodeboks ind/udPHP kode 


så den ny side file er sådan her hvor der er fejl på siden..

Fold kodeboks ind/udPHP kode 


men når den kommer over på file / side siger den sådan her ...

Fatal error: Call to a member function prepare() on a non-object in /home/jesperbo/public_html/....dk/activate_updater.php on line 2

det vil sige den hvor den siger sådan her

Fold kodeboks ind/udPHP kode 


jeg er ikke lige frem det bedste til at se den fejl men det vil være super hvis du fik set hvad jeg har gjordt forkert siden den ikke vil ligge det op på databasen :D

EIDT:


Jeg havde ikke connection til databasen men nu ligger der et nyt problem og det er at den ikke vil sende mig videre den ny side??



Indlæg senest redigeret d. 21.05.2012 19:17 af Bruger #17136
14 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 8 karma
Sorter efter stemmer Sorter efter dato
Er det en "headers already sent" fejl du får, som forhindrer PHP i at sende dig videre til en anden side?

I så fald er det sandsynligvis fordi der allerede er udskrevet noget på siden, såsom noget HTML, før din PHP blok hvor du benytter header()-funktionen. I det tilfælde vil PHP nemlig allerede have sendt indhold (HTML) til browseren, hvorefter du ikke kan sende nye headers.

Er det tilfældet, så kan du benytte dig af Output Buffering, som opsnapper al tekst og først sender det til browseren til sidst. Se især på ob_start() og ob_flush()

Alternativt kan du sørge for at have al kode der potentielt skal sende brugeren til en anden side, i toppen af dit PHP dokument, hvis det kan lade sig gøre.

Håber det var svar på hvad du leder efter.



Det ser umiddelbart ud som om din session slet ikke kører.

session_start() i toppen af begge dokumenter burde ordne det. Hvis ikke du udtrykkeligt beder om at få startet/genoptaget din session på hver side, så fyldes dit $_SESSION array slet ikke.



Gør brug af det faktum at PHP's fejlmeddelelser er rigtigt gode til at fortælle hvad og hvor det går galt:

Warning: Cannot modify header information - headers already sent by (output started at /home/jesperbo/public_html/,,,.dk/activate_updater.php:24) in /home/jesperbo/public_html/,,,.dk/activate_updater.php on line 48

Du har stadig output før dit kald til header(), grundet dine echo statements på linie 24 og 25, hvilket resulterer i at dit kald til header() på linie 48 går galt.

I følgende omskrivning har jeg indsat de førnævnte output buffering funktioner ob_start og ob_end_flush(), som opsnapper al tekst (f.eks. fra dine echo statements eller fejlmeddelelser) og undlader at sende det til browseren før kaldet til ob_end_flush() som jeg har indsat i bunden. På den måde kan du stadig foretage kald til header() i det meste af dokumentet.

Jeg har ganske vist ikke testet det, men det burde virke.

Fold kodeboks ind/udPHP kode 




Muligvis min fejl. Jeg kopierede koden fra et tidligere indlæg, så en tidligere fejl er kommet tilbage, samt en ny opdaget: dine typeangivelser i $stmt->bind_param er ukorrekte. Ret hhv. linie 39 og linie 44 til:
Fold kodeboks ind/udPHP kode 

Det sidste burde ellers udløse et Notice, så jeg er ikke sikker at det er problemet.

Dine datatyper har jeg også måttet gætte mig lidt til. Ret til hvor nødvendigt. F.eks. kunne det være nødvendigt at angive "mobil" som integer ("i"), hvis du ikke specifikt fjerner alt andet end tal og brugere indtaster et mobilnummer med mellemrum.



Ja det tror hjælp en lille del, men dog der imode,

jeg har bygge min kode op sådan her nu ikke også ,,

Fold kodeboks ind/udPHP kode 


og så kommer den her henne til den her file

Fold kodeboks ind/udPHP kode 


men jeg har prøve at skrive sådan her

Fold kodeboks ind/udPHP kode 


men den kommer kun frem og siger "godkendt"..

hvorfor husk den ikke den id som den har ?? hmm



Indlæg senest redigeret d. 21.05.2012 20:51 af Bruger #17136
sådan her på den første side

Fold kodeboks ind/udPHP kode 


altså der hvor man skrive sin infomation og ligen hmm.. :)

og sådan her på den anden side

Fold kodeboks ind/udPHP kode 

kommer frem med en ny fejl

Parse error: syntax error, unexpected T_IF in /home/jesperbo/public_html/,,,.dk/activate_updater.php on line 4

Det vil sige her

Fold kodeboks ind/udPHP kode 



glemt ; til
Fold kodeboks ind/udPHP kode 


EIDT:
skal bare have bygge/fandt ud af hvorfor den ikke gider sende mig videre til en ny side ? hmm
EIDT EIDT:

Jeg har klart det og har løse det, men nu er jeg kommet ind i nyt problem som gøre at den ikke ville upload et billede :(



Indlæg senest redigeret d. 22.05.2012 00:48 af Bruger #17136
Godt at det løste sig.

Mht. dit problem med billed-upload er du nødt til at uddybe nøjagtig hvad dit problem består i.

En ting man ofte glemmer er at formularen som du uploader billedet fra skal have en ekstra attribut sat, kaldet "enctype". Således:

Fold kodeboks ind/udHTML kode 


Måske du blot har glemt at sætte den attribut?

Husk at du naturligvis bør ændre "action" attributten, så den henviser til den side der tager sig af at gemme billedet etc., da formularen ellers POSTer til samme dokument (hvilket også sagtens kan være det du er ude efter, såfremt du håndterer den uploadede fil i samme dokument).



det har jeg dog husk :D , men tak

jeg har gjort sådan her

Fold kodeboks ind/udPHP kode 


og den næsten side som file bliver sendt til er her ;

Fold kodeboks ind/udPHP kode 


så kommer der fejl fra den sidste side/file

Notice: Undefined index: profilbillede in /home/jesperbo/public_html/,,,,.dk/activate_updater.php on line 8

Notice: Undefined index: file in /home/jesperbo/public_html/,,,,.dk/activate_updater.php on line 37

Warning: Cannot modify header information - headers already sent by (output started at /home/jesperbo/public_html/,,,,.dk/activate_updater.php:8) in /home/jesperbo/public_html/,,,,.dk/activate_updater.php on line 48



Okay, der er et par ting der går galt her, og fejlmeddelelserne fortæller faktisk det hele, hvis man studerer dem godt nok.

Du får 3 fejlmeddelelser:

Fold kodeboks ind/udKode 


Fejl nr. 1 (linie 8):
Fold kodeboks ind/udPHP kode 

Dit upload input hedder "file", ikke "profilbillede".

Fejl nr. 2 (linie 37):
Fold kodeboks ind/udPHP kode 

"file" oprettes i $_FILES, ikke $_POST. Desuden vil du i dette tilfælde nok have fat i din $pb variabel.

Fejl nr. 3 (linie 48):
Fold kodeboks ind/udPHP kode 

Dit kald til header() fungerer ikke, fordi der allerede er sendt output til browseren. De to første fejlmeddelelser tæller nemlig også som output, da de trods alt bliver sendt som HTML til browseren. Fejlmeddelelsen fortæller sågar hvornår dit output startede: linie 8, hvor første fejlmeddelelse udskrives, fordi dit input hedder "file", ikke "profilbillede".

Når du får rettet det vil PHP dog stadig brokke sig, såfremt din upload lykkes, da du på linie 24 og 25 sender tekst til browseren (echo). Så vil dit kald til header på linie 48 igen mislykkes. For at løse det, kan du benytte dig af output buffering, som tidligere nævnt, eller omstrukturere din kode, så dit kald til header ligger før nogen som helst form for output.



Okay, der er et par ting der går galt her, og fejlmeddelelserne fortæller faktisk det hele, hvis man studerer dem godt nok.

Du får 3 fejlmeddelelser:

Fold kodeboks ind/udKode 


Fejl nr. 1 (linie 8):
Fold kodeboks ind/udPHP kode 

Dit upload input hedder "file", ikke "profilbillede".

Fejl nr. 2 (linie 37):
Fold kodeboks ind/udPHP kode 

"file" oprettes i $_FILES, ikke $_POST. Desuden vil du i dette tilfælde nok have fat i din $pb variabel.

Fejl nr. 3 (linie 48):
Fold kodeboks ind/udPHP kode 

Dit kald til header() fungerer ikke, fordi der allerede er sendt output til browseren. De to første fejlmeddelelser tæller nemlig også som output, da de trods alt bliver sendt som HTML til browseren. Fejlmeddelelsen fortæller sågar hvornår dit output startede: linie 8, hvor første fejlmeddelelse udskrives, fordi dit input hedder "file", ikke "profilbillede".

Når du får rettet det vil PHP dog stadig brokke sig, såfremt din upload lykkes, da du på linie 24 og 25 sender tekst til browseren (echo). Så vil dit kald til header på linie 48 igen mislykkes. For at løse det, kan du benytte dig af output buffering, som tidligere nævnt, eller omstrukturere din kode, så dit kald til header ligger før nogen som helst form for output.


Ja der har du nok ret i noget der.

men det gå som sagt bedre frem af nu

nu kommer den frem og siger kun
Fold kodeboks ind/udKode 


sådan her ser den ude efter den er blevet updater ;

Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 22.05.2012 17:04 af Bruger #17136
<< < 12 > >>
t