Autor Zpráva
Jupíí
Profil
Zdravím
Mám takový dotaz. Dejme tomu že mám toto :

$Kod = "<p>Ahoj <b>Tady bude text</b></p>";


A v databázy by byl slobec <B> a do toho to sloupce by se uložil veškerý text, který by byl v proměnné $Kod napsám mezi znaky
<b> </b> 
.
Nedá se toto nějak vytvořit?
P.S ten slubec <B> už bych měl předem vytvořen.
Moc děkuji všem co se mi pokusí poraďit.

(nejsem si jist jestli to spíše nepatří do kategorie Databáze , ale to je snad jedno )
ninja
Profil
Samozrejme ze to jde:

1. Vycucnout z promene cast mezi <b> a </b>. Bud pres regularni dotaz, nebo funkce strpos a substr, atd.
2. Ulozit si separatne jendotlive casti do databaze.
3. Pri zobrazeni opet spojit.

Kde mas problem? Co ti nejde?
Jupíí
Profil
On totiž v proměnné $Kod bude uložen zdrojový kód jedné stránky a já bych to potřeboval zozdělit do databáze jako Sloupec <meta> a v něm vše co bylo v kódu
<meta>
Nefunguje mi to rozsekání vůbec jsem netušil jak na to

strpos a substr,

Ty jsou v PHP ?
Měsíček
Profil
"Ty jsou v PHP ?"

Ano, ano
kletely
Profil
Jupíí
On totiž v proměnné $Kod bude uložen zdrojový kód jedné stránky a já bych to potřeboval zozdělit do databáze jako Sloupec <meta> a v něm vše co bylo v kódu
Ty myslíš previest na entity Alebo to mu ja nechápem.
Jupíí
Profil
kletely
Tak ještě jednou :

<?php 

$kod = "<html><head><title>Ahoj</title></head><body><h1>Nadpis</h1><b>Vítám</b><p>vás</p>";

?>


A v databázy by byly sloupce : <title> , <h1> , <b>, <p> Do slupce <title> by se uložil veškerý obsah
<title>
který bude v proměnné $kod mezi tagy
<title> a </title>
. Do sloupce <h1> by se uložil veěkerý obsah, který by se v proměnné nacházel mezi tagy
<h1> a </h1>
. A tak dále ........

Chápeš?
Mastodont
Profil
Jupíí
A co když se tam některý tag zopakuje víckrát, jako že u P je to dost pravděpodobné?
srigi
Profil
Mozes prezradit co to bude za aplikaciu, ze pozadujes takuto zvlastnu funkcnost. IMO lepsie je si do DB ulozit celu obsah a rozsekavat na srane PHP.

BTW znacka <b> je zastarala, pouzivaj <strong>.
Jupíí
Profil
Mastodont
srigi
Měl to být příklad aby se to lépe pracovalo. ale pořád netuším jak na to
Jupíí
Profil
Mozes prezradit co to bude za aplikaciu,

Je to smrtelně důležité? Raději bych se o tom nezmiňova než mě skroíte kritikou
Měsíček
Profil
"Měl to být příklad aby se to lépe pracovalo. ale pořád netuším jak na to"

Naučit se regulární výrazy?
nightfish
Profil
srigi
BTW znacka <b> je zastarala, pouzivaj <strong>.
možná jsi chtěl říct překonaná (deprecated) - nicméně není, viz HTML specifikaci

Jupíí
$kod = "<html><head><title>Ahoj</title></head><body><h1>Nadpis</h1><b>Vítám</ b><p>vás</p>";
$title = $h1 = $b = $p = "";
if (preg_match("/<title>(.*)<\/title>/Us", $kod, $regs)) $title = $regs[1];
if (preg_match("/<h1>(.*)<\/h1>/Us", $kod, $regs)) $h1 = $regs[1];
...


omezení: vezme to první výskyt značky - když tam bude vícekrát <h1>...</h1>, tak to vezme jenom obsah prvního z nich (což se projeví zřejmě u odstavců)
Jupíí
Profil
Jednalo by se hlavě o hlavičky

<meta name="keywords" content="dbafd" />
<meta name="destriptions" content="fjasdbfbksa" /> 


A já bych potřeboval obsahy hleviček uložit do sloupců keywords a destriptions atd.. [

omezení: vezme to první výskyt značky - když tam bude vícekrát <h1>...</h1>, tak to vezme jenom obsah prvního z nich (což se projeví zřejmě u odstavců)

- to se nijak ošetřit nedá?
Měsíček
Profil
"Jednalo by se hlavě o hlavičky "

A znáš funkci get_meta_tags();?

"to se nijak ošetřit nedá?"

Vše se dá, teď jde jen o to jak by jsi to chtěl ošetřit .. mohl by jsi ukládat sloupce jako h1[0], h1[1] ... jakožto indexy a nebo přidávat hodnoty do řádků -> h1 = něco, něco, něco | něco něco | něco.
nightfish
Profil
Měsíček
A znáš funkci get_meta_tags();?
pěkná, tu jsem neznal

Jupíí
- to se nijak ošetřit nedá?
ale dá... místo preg_match použít preg_match_all a pak si zpracovat výsledné pole
krteczek
Profil
a ty chceš z nějaké stránky tyto informace vytáhnout? V tom případě platí to výše uvedené.

nebo děláš administraci a chceš mít pro každou stránku možnost uložit jiné hodnoty keywords, title, ... zvlášť? V tom případě si udělej jednotlivé sloupce pro požadované položky a při výpisu stránky je jen vlož na požadované místo.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0