Avatar billede gregorian Nybegynder
24. august 2003 - 19:05 Der er 26 kommentarer og
1 løsning

if sætning i variabel - hvordan

include("connect.php");
$query = mysql_query("select kode from artikler where id = 20");
$row = mysql_fetch_array($query);
$str = $row[kode];
$str = explode("[del]", $str);
       
$str = if(!empty($str[0])){ print $str[0];} osv til 6.

hvordan bruger jeg if sætninger deklarering af en variabel?
min tekst er opdelt med [del] ( derfor explode )
jeg skal nemlig have udskiftet en af disse dele og sammensætte det igen og sætte det ind i min db..

kan i hjælpe eller skal der en dybere forklaring til?
Avatar billede schaefner Juniormester
24. august 2003 - 19:07 #1
tjooh, en dybere foklaring ville ikke skade :)
Avatar billede fangel Nybegynder
24. august 2003 - 19:12 #2
se fx dette ex:

$str = 42;
$textstr = ($str == 42) ? 'str er 42' : 'str er ikke 42!';

altså:

$var = (expr) ? true : false

---

var det sådan noget du mente?

Morten
Avatar billede gregorian Nybegynder
24. august 2003 - 19:12 #3
oki.

jeg har mine artikler opdelt i tekst,kode,overskrift osv.
hver af dem kan indeholde flere tekster, koder, overskrift osv, som hver især bliver delt op vha tekste [del]
dette bliver så placeret på min side efter hvilket tal det nu har fra 0-1-2-3 osv.

problemet her er at jeg skal have udtrukket alle disse tekster fra kode, men udskifte en enkelt af dem og sammensætte dem igen, til et langt stykke tekst.
str = $row[kode];
$str = explode("[del]", $str);
$str[0] + $str[1] osv til der er ikke flere tekster.

eks. i db:
kode1[del]
kode2[del]
kode3[del]

nu har jeg så et stykke ændret tekst fra en form, som hedder $ny_tekst ( dette tekst skal indsættes istedetfor kode2

derfor skal finde ud af hvordan jeg gør følgende.
$str = $str[0] + $ny_tekst + $str[2]

forstår du eller er det for kludret en forklaring! den er svær at forklare
Avatar billede odni Nybegynder
24. august 2003 - 19:16 #4
skal en bruger kunne vælge hvad man vil udskifte ?
Avatar billede schaefner Juniormester
24. august 2003 - 19:16 #5
skal kode2 overskrives?
Avatar billede gregorian Nybegynder
24. august 2003 - 19:18 #6
kode2 skal overskrives ja.

jeg tænkte på at lave en for løkke som gik dem igennem ( altså i deklareringen af variablen, men fik det ikke til at virke, da jeg ikke kan bruge if sætninger deri )

$tekst = for($i=0; $i< ?; $i++){
$str[$i]."[del]"
}

ideen er der men kan ikke få det ti atvirke.!
Avatar billede gregorian Nybegynder
24. august 2003 - 19:19 #7
det er en admin funktion..til at skrive artikler med online uden editor
Avatar billede odni Nybegynder
24. august 2003 - 19:20 #8
du kan da sagtens bruge if i for ...
Avatar billede gregorian Nybegynder
24. august 2003 - 19:21 #9
ja.

men jer prøvede jeg at bruge enløkke inden i en variabel.. dutter ikke!
Avatar billede fangel Nybegynder
24. august 2003 - 19:22 #10
brug den syntax jeg skriver!
Avatar billede gregorian Nybegynder
24. august 2003 - 19:23 #11
forstår ikke hvordan den skal bruges..

schaefner du har altid kunne hjælpe mig..  - håber du kan igen ;)
Avatar billede odni Nybegynder
24. august 2003 - 19:29 #12
er det ik bare at lave sådan en her:

$str[$var] = $ny_tekst;

hvor $var er det man vil ændre i nummer (skal fås fra en form et sted …)
Avatar billede gregorian Nybegynder
24. august 2003 - 19:33 #13
har du ret i odni, men jeg aner bare ikke hvor mange sætninger der er, da det ikke er en ens artikel altid. skal have lavet en optælling først så..

løst jo det ene problem som jeg spurgte efter så, men kan man egentlig bruge en if sætning i en variabel eller lign?
Avatar billede odni Nybegynder
24. august 2003 - 19:35 #14
du tæller vel bare dit array? $dinvar = count($str);

hvorfor er du så glad for if i variabler? eks:

if($hej = "hej"){
$hej = "hejsa"
}

ikke noget if i variabler - det laves simpelthen ikke sådan
Avatar billede schaefner Juniormester
24. august 2003 - 19:36 #15
odni >> Husk to = hvis du skal sammenligne ;)
Avatar billede odni Nybegynder
24. august 2003 - 19:37 #16
oops, lidt for hurtig, tak dér

if($hej == "hej"){
$hej = "hejsa"
}
Avatar billede odni Nybegynder
24. august 2003 - 19:38 #17
nåå jo, i øvrigt skriver jeg normalt ikke one-line if's med { } - der kan man nøjes med et ; i enden, eksempel 3 ( :P ):

if($hej == "hej") $hej = "hejsa";
Avatar billede gregorian Nybegynder
24. august 2003 - 20:26 #18
nå ja $dinvar = count($str);..

thx!
Avatar billede gregorian Nybegynder
24. august 2003 - 20:26 #19
hmm.. point. hvem skal ha den!!! tænke tænke..

må vel være odni.

giv lige et svar.. nogle der har nogen invendinger så skriv lige!
Avatar billede odni Nybegynder
24. august 2003 - 20:27 #20
:)
Avatar billede gregorian Nybegynder
24. august 2003 - 20:29 #21
sorry. fandt lige ud af jeg mangerl en ting.

<?
include("connect.php");
        $query = mysql_query("select kode from artikler where id = 20");
        $row = mysql_fetch_array($query);
        $str = $row[kode];
        $str = explode("[del]", $str);
   
        /*
        str indeholder nu 3 dele. 0, 1 og
        $str[0], $str[1] oh $str[2]
       
        nu har jeg en variabel fra en form, som inderholder nogle rettelser til str[1]
        den skal udskiftes med $nytekst
        */
        $tal = count($str);
        $ny_tekst[1] = $str[1];
       
        // nu skal $str samles igen med 0, 1 og 2
        //hvordan gøres det?
        // kan dette laves til en løkke med $tal som slutværdien?
       
        $str = $str[0]."[del]".$str[1]."[del]".$str[2];

?>
Avatar billede gregorian Nybegynder
24. august 2003 - 20:30 #22
pointene er givet til dig odni.. kan du hjælpe med den her?
Avatar billede gregorian Nybegynder
24. august 2003 - 20:35 #23
kan dette laves til en løkke med $tal som slutværdien?
altså noget lign. af:
for($i=0; $i<$tal; $i++={
men hvordan så??

( dette er hvad det skal ende med )
$str = $str[0]."[del]".$str[1]."[del]".$str[2];
}
       
        $str = $str[0]."[del]".$str[1]."[del]".$str[2];
Avatar billede odni Nybegynder
24. august 2003 - 20:36 #24
<?
include("connect.php");
$query = mysql_query("select kode from artikler where id = 20");
$row = mysql_fetch_array($query);
$str = $row[kode];
$str = explode("[del]", $str);
$tal = count($str);
//optimeret til register-globals=off, ændr til $ny_tekst hvis du vil
$str[1] $_POST['ny_tekst'];
/*
desuden skal du sørge for at den retter den korrekte
dvs du må på en eller anden måde få en værdi med dig
og skrive den ind i $str[$dinvaerdi]
*/
$for ($=0;$i<$tal;$i){
$final = $str[$i] . "[del]";
}
//nu skal $final skrives ind i din database :) - håber det virker
//har jeg mon glemt noget?
?>
Avatar billede odni Nybegynder
24. august 2003 - 20:37 #25
ups:

<?
include("connect.php");
$query = mysql_query("select kode from artikler where id = 20");
$row = mysql_fetch_array($query);
$str = $row[kode];
$str = explode("[del]", $str);
$tal = count($str);
//optimeret til register-globals=off, ændr til $ny_tekst hvis du vil
$str[1] $_POST['ny_tekst'];
/*
desuden skal du sørge for at den retter den korrekte
dvs du må på en eller anden måde få en værdi med dig
og skrive den ind i $str[$dinvaerdi]
*/
for($=0;$i<$tal;$i){
$final = $str[$i] . "[del]";
}
//nu skal $final skrives ind i din database :) - håber det virker
//har jeg mon glemt noget?
?>
Avatar billede odni Nybegynder
24. august 2003 - 20:38 #26
fuck det går lidt for stærkt:

<?
include("connect.php");
$query = mysql_query("select kode from artikler where id = 20");
$row = mysql_fetch_array($query);
$str = $row[kode];
$str = explode("[del]", $str);
$tal = count($str);
//optimeret til register-globals=off, ændr til $ny_tekst hvis du vil
$str[1] = $_POST['ny_tekst'];
/*
desuden skal du sørge for at den retter den korrekte
dvs du må på en eller anden måde få en værdi med dig
og skrive den ind i $str[$dinvaerdi]
*/
for($=0;$i<$tal;$i){
$final = $str[$i] . "[del]";
}
//nu skal $final skrives ind i din database :) - håber det virker
//har jeg mon glemt noget?
?>
Avatar billede gregorian Nybegynder
24. august 2003 - 21:06 #27
det er lidt småfejl. dem skla jeg nok løse.. kan de ideen med det nu gør.

kan desv ikke blive.. har en aftale med en ven.. tak for hjælpen odni.. ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester