/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Ting fra mysql ind i et textarea!
Fra : Ralle


Dato : 19-08-06 22:08

Hejsa...

Jeg vil gerne have lavet sådan at jeg har noget liggende i en
tabel i min db, og så går jeg ind på en side, så står der fx:

sitename: [textarea med sitename i]

Siteslogan: [textarea med siteslogan i]

Text: [textarea med text i]

og så trykke på submit,

det eneste jeg har problemer med er at få tingene ind i
textarea'et.

nogle der ved hvordan man får det ind i textarea'et??

altså har forsøgt med:

test.php

<?

require("./config.php");



// Åbn databasen
aabn_forbindelse_og_vaelgdb();

$site_query = 'SELECT sitename, siteslogan, content FROM
'.$prefix.'';

$site = sql_spoerg_og_faa_svar($site_query);

$sitename = '.$site['sitename'].'

echo "<INPUT TYPE=\"TEXT\" NAME=\"sitename1\" VALUE=\"$sitename\"
SIZE=\"30\">";

?>

men det virker ikke!

i config.php er der mysql oplysninger!

Ralle - nogle der kan hjælpe??

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Ukendt (19-08-2006)
Kommentar
Fra : Ukendt


Dato : 19-08-06 22:15

Ralle wrote:
> test.php
....

> $sitename = '.$site['sitename'].'
>
> echo "<INPUT TYPE=\"TEXT\" NAME=\"sitename1\" VALUE=\"$sitename\"
> SIZE=\"30\">";
>
> ?>
>
> men det virker ikke!


Hjælper det, hvis du skriver:

$sitename = $site['sitename'];

Ralle (19-08-2006)
Kommentar
Fra : Ralle


Dato : 19-08-06 22:25

> > test.php
> ....
>
> > $sitename = '.$site['sitename'].'
> >
> > echo "<INPUT TYPE=\"TEXT\" NAME=\"sitename1\" VALUE=\"$sitename\"
> > SIZE=\"30\">";
> >
> > ?>
> >
> > men det virker ikke!
>
>
> Hjælper det, hvis du skriver:
>
> $sitename = $site['sitename'];


nu kommer der da et textarea frem!

se selv på: http://enzolim.dk/test3/test4.php

jeg har tjekket i databasen, og der ER indsat noget i den, men hvorfor
skriver den det ikke i textarea'et??

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (19-08-2006)
Kommentar
Fra : Ukendt


Dato : 19-08-06 22:29

Ralle wrote:
>>> test.php
>>> ....
>>> echo "<INPUT TYPE=\"TEXT\" NAME=\"sitename1\" VALUE=\"$sitename\"
>>> SIZE=\"30\">";

Jeg opdagede lige en fejl mere
Hvad hvis du skriver:
echo "<input type=\"text\" name=\"sitename1\" value=\"".$sitename."\"
size=\"30\" />";

Ralle wrote
> jeg har tjekket i databasen, og der ER indsat noget i den, men hvorfor
> skriver den det ikke i textarea'et??

Er du sikker på, det kommer ud af databasen?

Ralle (19-08-2006)
Kommentar
Fra : Ralle


Dato : 19-08-06 22:42

at(nospam) wrote in dk.edb.internet.webdesign.serverside.php:
> Ralle wrote:
> >>> test.php
> >>> ....
> >>> echo "<INPUT TYPE=\"TEXT\" NAME=\"sitename1\" VALUE=\"$sitename\"
> >>> SIZE=\"30\">";
>
> Jeg opdagede lige en fejl mere
> Hvad hvis du skriver:
> echo "<input type=\"text\" name=\"sitename1\" value=\"".$sitename."\"
> size=\"30\" />";
>
> Ralle wrote
> > jeg har tjekket i databasen, og der ER indsat noget i den, men
hvorfor
> > skriver den det ikke i textarea'et??
>
> Er du sikker på, det kommer ud af databasen?

stadig det samme, blankt felt.

nej jeg er faktisk ikke helt sikker, jeg har prøvet at skrive echo
"sitename er $sitename" og den skriver: "sitename er " altså den skriver
ingenting som sitename, men sitename er Enzolim.dk

hvis du svarer er det ikke sikkert jeg svarer idag, da jeg nok snart
slukker for computeren, men jeg svarer 100 % imorgen!

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (19-08-2006)
Kommentar
Fra : Ukendt


Dato : 19-08-06 23:02

Ralle wrote:
> nej jeg er faktisk ikke helt sikker, jeg har prøvet at skrive echo
> "sitename er $sitename" og den skriver: "sitename er " altså den skriver
> ingenting som sitename, men sitename er Enzolim.dk

Så er der noget galt med MySQL-connectionen
Prøv at lav en almindelig SQL-forespørgelse fx:

// Udfyld disse
$mysql = array('srv'=>'', 'usr'=>'', 'pass'=>'', 'db'=>'', 'table'=>'');

// Tjekker mysql-connectionen mm
$mc = mysql_connect($mysql['srv'], $mysql['usr'], $mysql['pass']) OR
die(mysql_error());
mysql_select_db($mysql['db'], $mc) OR die(mysql_error());
$mq = mysql_query('SELECT * FROM '.$mysql['table']) OR die(mysql_error());
mysql_close($mc)
while ($row = mysql_fetch_array($mq)) {
   echo $row['0']."<br />";
}


Dette er blot for at være sikre på, at der kan opnås forbindelse til
databasen
Det var det eneste script, jeg lige havde til at ligge på denne comp, og
jeg gad ikke til at lave et ny (dovenskaben længe leve ;))

> hvis du svarer er det ikke sikkert jeg svarer idag, da jeg nok snart
> slukker for computeren, men jeg svarer 100 % imorgen!

Det er da bare i orden

Ralle (19-08-2006)
Kommentar
Fra : Ralle


Dato : 19-08-06 23:11

at(nospam) wrote in dk.edb.internet.webdesign.serverside.php:
> Ralle wrote:
> > nej jeg er faktisk ikke helt sikker, jeg har prøvet at skrive echo
> > "sitename er $sitename" og den skriver: "sitename er " altså den skriver
> > ingenting som sitename, men sitename er Enzolim.dk
>
> Så er der noget galt med MySQL-connectionen
> Prøv at lav en almindelig SQL-forespørgelse fx:
>
> // Udfyld disse
> $mysql = array('srv'=>'', 'usr'=>'', 'pass'=>'', 'db'=>'', 'table'=>'');
>
> // Tjekker mysql-connectionen mm
> $mc = mysql_connect($mysql['srv'], $mysql['usr'], $mysql['pass']) OR
> die(mysql_error());
> mysql_select_db($mysql['db'], $mc) OR die(mysql_error());
> $mq = mysql_query('SELECT * FROM '.$mysql['table']) OR die(mysql_error());
> mysql_close($mc)
> while ($row = mysql_fetch_array($mq)) {
>    echo $row['0']."<br />";
> }
>
>
> Dette er blot for at være sikre på, at der kan opnås forbindelse til
> databasen
> Det var det eneste script, jeg lige havde til at ligge på denne comp, og
> jeg gad ikke til at lave et ny (dovenskaben længe leve ;))
>
> > hvis du svarer er det ikke sikkert jeg svarer idag, da jeg nok snart
> > slukker for computeren, men jeg svarer 100 % imorgen!
>
> Det er da bare i orden

Parse error: syntax error, unexpected T_WHILE in
/hsphere/local/home/hypocrit/enzolim.dk/test3/test6.php on line 12

hjælp!

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Kasper Johansen (20-08-2006)
Kommentar
Fra : Kasper Johansen


Dato : 20-08-06 00:09

Ralle skrev:
>> while ($row = mysql_fetch_array($mq)) {
>>    echo $row['0']."<br />";
>> }

Prøv med:

print_r($row);


....i stedet for at lave echo.

--
Med venlig hilsen
Kasper Johansen

Geert Lund (20-08-2006)
Kommentar
Fra : Geert Lund


Dato : 20-08-06 03:11

Ralle wrote:

>>Er du sikker på, det kommer ud af databasen?

> nej jeg er faktisk ikke helt sikker, jeg har prøvet at skrive echo
> "sitename er $sitename" og den skriver: "sitename er " altså den skriver
> ingenting som sitename, men sitename er Enzolim.dk

Når man koder - er det vigtigt for en del af fejlfindingen at man
starter med at checke om de variable man opererer med også reelt får
tildelt det ønskede resultat - derfor er det vigtigt at man gør sig
bekendt med nogle forskellige funktioner som kan bruges til den slags
fejlfinding.

print_r() - http://www.php.net/print_r
var_dump() - http://www.php.net/vardump

er fx gode funktioner at kunne på rygradden til at checke indholdet af
sine udtryk.

Din ovenstående observation burde give et hint om at der er noget galt
med indholdet i $sitename som tydeligvis ikke indeholder det forventede
og du er derfor nød til at starte et andet sted i din kode - nemlig at
finde ud af 1) om du overhovedet får det forventede ud af databasen og
2) om du får afleveret oplysningerne korrekt til din $site variabel.

Du er derfor nød til at kigge på om

$site = sql_spoerg_og_faa_svar($site_query);

leverer det ønskede resultat tilbage - og det er jo lidt svært at hjælpe
da du ikke har skrevet indholdet i funktionen sql_spoerg_og_faa_svar.

Men start fx med at indsætte en print_r( $site ); efter ovenstående
linie og se om $site har det forventede indhold - hvis ikke - så har du
i hvertfald tracet problemet et skridt nærmere.

--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 10:10

> Men start fx med at indsætte en print_r( $site ); efter ovenstående
> linie og se om $site har det forventede indhold - hvis ikke - så har du
> i hvertfald tracet problemet et skridt nærmere.
>

Jeg får følgende meddelelse:

Array ( [0] => Array ( [0] => Enzolim.dk [sitename] => Enzolim.dk [1] =>
Sponsored By Ledervejen.dk [siteslogan] => Sponsored By Ledervejen.dk [2] =>
Test Test [content] => Test Test ) )

dvs. den fandt altså det jeg har skrevet ind i min tabel!

Hvad skal jeg nu gøre??

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jesper Brunholm (20-08-2006)
Kommentar
Fra : Jesper Brunholm


Dato : 20-08-06 11:19

Ralle skrev:
>> Men start fx med at indsætte en print_r( $site ); efter ovenstående
>> linie og se om $site har det forventede indhold - hvis ikke - så har du
>> i hvertfald tracet problemet et skridt nærmere.

> Jeg får følgende meddelelse:
> Array ( [0] => Array ( [0] => Enzolim.dk [sitename] => Enzolim.dk [1] =>
> Sponsored By Ledervejen.dk [siteslogan] => Sponsored By Ledervejen.dk [2] =>
> Test Test [content] => Test Test ) )
>
> dvs. den fandt altså det jeg har skrevet ind i min tabel!

Det er rigtigt rart at vide. Hvis du også vil have det pænt stillet op
så smid et sæt <pre> tags udenom printet:

echo '<pre>';
print_r($site);
echo '</pre>';

Jeg har lavet mig en altid tilstædeværende funktion som gør dette:

function preprint_r($objekt){
echo '<pre>';
print_r($objekt);
echo '</pre>';
}

> Hvad skal jeg nu gøre??

Jeg synes du skal begynde med at skifte mysql_fetch_array() ud med
mysql_fetch_assoc(). Det gør at du får et array ud med

Array (
   [0] => Array (
      [sitename] => Enzolim.dk
      [siteslogan] => Sponsored By Ledervejen.dk
      [content] => Test Test
   )
)

i stedet for

Array (
   [0] => Array (
      [0] => Enzolim.dk
      [sitename] => Enzolim.dk
      [1] => Sponsored By Ledervejen.dk
      [siteslogan] => Sponsored By Ledervejen.dk
      [2] => Test Test
      [content] => Test Test
   )
)

- dvs de overflødige positioner på talplaceringer undlades.

for så at komme til det aktuelle problem (sorry for taking so long )

hvis det er print_r($site); du har fået vardumpet ud af, så findes
$site['sitename'] ikke, hvorimod $site[0]['sitename'] findes.

Hvorfor? - sikkert fordi du har lavet et udtræk af rækker, og $site kan
så potentielt indeholde en serie arrays med hver sin database-
tabel-række i.

Den letteste løsning er at få det array med data, som du skal bruge,
hentet ud, fx med:

$datapost = $site[0];

hvorefter $datapost['sitename'] osv kan tilgås.

mvh

Jesper Brunholm


Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 11:57

> Det er rigtigt rart at vide. Hvis du også vil have det pænt stillet op
> så smid et sæt <pre> tags udenom printet:
>
> echo '<pre>';
> print_r($site);
> echo '</pre>';
>
> Jeg har lavet mig en altid tilstædeværende funktion som gør dette:
>
> function preprint_r($objekt){
> echo '<pre>';
> print_r($objekt);
> echo '</pre>';
> }
>
> > Hvad skal jeg nu gøre??
>
> Jeg synes du skal begynde med at skifte mysql_fetch_array() ud med
> mysql_fetch_assoc(). Det gør at du får et array ud med
>
> Array (
>    [0] => Array (
>       [sitename] => Enzolim.dk
>       [siteslogan] => Sponsored By Ledervejen.dk
>       [content] => Test Test
>    )
> )
>
> i stedet for
>
> Array (
>    [0] => Array (
>       [0] => Enzolim.dk
>       [sitename] => Enzolim.dk
>       [1] => Sponsored By Ledervejen.dk
>       [siteslogan] => Sponsored By Ledervejen.dk
>       [2] => Test Test
>       [content] => Test Test
>    )
> )
>

done... det ser lidt bedre ud når det står sådan ;D

.....

nu er siden test4.php:

<?

require("./config.php");



// Åbn databasen
aabn_forbindelse_og_vaelgdb();

$site_query = 'SELECT sitename, siteslogan, content FROM '.$prefix.'';

$site = sql_spoerg_og_faa_svar($site_query);

$sitename = $site[0]['sitename'];

echo "<input type=\"text\" name=\"sitename1\" value=\"".$sitename."\"
size=\"30\" />";

?>

og der står nu: [enzolim.dk] ( [] angiver textarea!)

Så det virker nu! tusind tak for hjælpen alle sammen!

Jeg skriver her inde med link til kode osv. når jeg er 100 % færdig med mit
projekt!

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 13:07

filen gem.php giver fejl.

gem.php:

<?php

require("./config.php");
$sitename = $_POST['sitename'];
$siteslogan = $_POST['siteslogan'];
$content = $_POST['content'];

aabn_forbindelse_og_vaelgdb();

sql_spoerg("UPDATE enzolim SET sitename=$sitename;");
sql_spoerg("UPDATE enzolim SET siteslogan=$siteslogan;");
sql_spoerg("UPDATE enzolim SET content=$content;");

luk_forbindelse();

header("Location: test4.php");

?>

den kommer med følgende fejl:

coldent done: UPDATE enzolim SET sitename=test.dk;
The Fail Is: Unknown table 'test' in field list


Nogle der kan hjælpe med dette??

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (20-08-2006)
Kommentar
Fra : Ukendt


Dato : 20-08-06 14:38


> require("./config.php");
> $sitename = $_POST['sitename'];
> $siteslogan = $_POST['siteslogan'];
> $content = $_POST['content'];
>
> aabn_forbindelse_og_vaelgdb();
>
> sql_spoerg("UPDATE enzolim SET sitename=$sitename;");
> sql_spoerg("UPDATE enzolim SET siteslogan=$siteslogan;");
> sql_spoerg("UPDATE enzolim SET content=$content;");
>
> luk_forbindelse();
>
> header("Location: test4.php");
>
> ?>
>
> den kommer med følgende fejl:
>
> coldent done: UPDATE enzolim SET sitename=test.dk;
> The Fail Is: Unknown table 'test' in field list

Ja, selvom det er et MySQL-spørgsmål, kan jeg da godt hjælpe dig
Den skal se således ud i stedet:
sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
`siteslogan`='".$siteslogan."' AND `content`='".$content."'");

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 14:46

at(nospam) wrote in dk.edb.internet.webdesign.serverside.php:
> > require("./config.php");
> > $sitename = $_POST['sitename'];
> > $siteslogan = $_POST['siteslogan'];
> > $content = $_POST['content'];
> >
> > aabn_forbindelse_og_vaelgdb();
> >
> > sql_spoerg("UPDATE enzolim SET sitename=$sitename;");
> > sql_spoerg("UPDATE enzolim SET siteslogan=$siteslogan;");
> > sql_spoerg("UPDATE enzolim SET content=$content;");
> >
> > luk_forbindelse();
> >
> > header("Location: test4.php");
> >
> > ?>
> >
> > den kommer med følgende fejl:
> >
> > coldent done: UPDATE enzolim SET sitename=test.dk;
> > The Fail Is: Unknown table 'test' in field list
>
> Ja, selvom det er et MySQL-spørgsmål, kan jeg da godt hjælpe
dig
> Den skal se således ud i stedet:
> sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
> `siteslogan`='".$siteslogan."' AND `content`='".$content."'");


Det giver ingen fejl, men det virker heller ikke som det skal!

når jeg skriver sitename som test og de andre som test, så kommer
sitename til at være 0 og de andre til at være det de var i
forevejen..

hvad er der galt??

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (20-08-2006)
Kommentar
Fra : Ukendt


Dato : 20-08-06 14:54

Ralle wrote:
> Det giver ingen fejl, men det virker heller ikke som det skal!
>
> når jeg skriver sitename som test og de andre som test, så kommer
> sitename til at være 0 og de andre til at være det de var i
> forevejen..

Det kan jeg godt se nu, havde lige lidt travlt før
Du mangler en WHERE i din SQL-forespørgsel

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 15:07

> > Det giver ingen fejl, men det virker heller ikke som det skal!
> >
> > når jeg skriver sitename som test og de andre som test, så kommer
> > sitename til at være 0 og de andre til at være det de var i
> > forevejen..
>
> Det kan jeg godt se nu, havde lige lidt travlt før
> Du mangler en WHERE i din SQL-forespørgsel

where hvad? fx.

sql_spoerg(UPDATE 'enzolim' WHERE sitename=$sitename AND
siteslogan=$siteslogan AND content=$content)

eller

sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
`siteslogan`='".$siteslogan."' AND `content`='".$content."' WHERE
id=1");

selvom jeg ikke har noget der hedder id :s

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (20-08-2006)
Kommentar
Fra : Ukendt


Dato : 20-08-06 15:12

Ralle wrote:
> where hvad? fx.
>
> sql_spoerg(UPDATE 'enzolim' WHERE sitename=$sitename AND
> siteslogan=$siteslogan AND content=$content)
>
> eller
>
> sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
> `siteslogan`='".$siteslogan."' AND `content`='".$content."' WHERE
> id=1");
> selvom jeg ikke har noget der hedder id :s

Ligesom den nederste. Derfor er det altid en god idé at fremstille id og
lave denne til auto_increment

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 15:28

> > sql_spoerg(UPDATE 'enzolim' WHERE sitename=$sitename AND
> > siteslogan=$siteslogan AND content=$content)
> >
> > eller
> >
> > sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
> > `siteslogan`='".$siteslogan."' AND `content`='".$content."' WHERE
> > id=1");
> > selvom jeg ikke har noget der hedder id :s
>
> Ligesom den nederste. Derfor er det altid en god idé at fremstille id og
> lave denne til auto_increment

selv om der er id'et så bliver den stadig 0

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Ukendt (20-08-2006)
Kommentar
Fra : Ukendt


Dato : 20-08-06 15:36

Ralle wrote:
> selv om der er id'et så bliver den stadig 0

Der kan være to grunde:
1. Er id'et 1?
2. Kommandoen skal se således ud:
sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
`siteslogan`='".$siteslogan."' AND `content`='".$content."' WHERE
`id`='1'");

Ralle (20-08-2006)
Kommentar
Fra : Ralle


Dato : 20-08-06 16:07

at(nospam) wrote in dk.edb.internet.webdesign.serverside.php:
> Ralle wrote:
> > selv om der er id'et så bliver den stadig 0
>
> Der kan være to grunde:
> 1. Er id'et 1?

JA

> 2. Kommandoen skal se således ud:
> sql_spoerg("UPDATE `enzolim` SET `sitename`='".$sitename."' AND
> `siteslogan`='".$siteslogan."' AND `content`='".$content."' WHERE
> `id`='1'");

det gør den, men stadigvæk bliver det 0 :S

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste